IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

besoin aide requete (group by ?)


Sujet :

Langage SQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2008
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 28
    Points : 25
    Points
    25
    Par défaut besoin aide requete (group by ?)
    bonjour,

    je sais pas comment obtenir ce que je veux
    j'ai une table qui est un historique et sur laquelle un insert est fait à chaque modif d'autres tables.
    disons qu'elle est comme ça :

    reference date_modif data1 ...
    00001
    00001
    00002
    00002
    00002
    ...

    date_modif étant le timestamp de l'insert

    et je veux récupérer les données correspondant au timestamp le plus élevé pour une référence précise

    je pense qu'il faut un group by mais je sais pas comment dire "prendre la ligne avec le timestamp le plus élevé"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT data1
    , ...
    FROM TABLE1
    WHERE REFERENCE = '00001'
    GROUP BY REFERENCE HAVING (?)
    merci de m'aider

  2. #2
    Membre émérite Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Points : 2 845
    Points
    2 845
    Par défaut
    Salut !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select max(date_modif)
    from histo 
    where ref = '00001'
    Ca te donne la date max

    Donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    select * 
    from histo
    where ref = '00001'
      and date_max = (
    select max(date_modif)
    from histo 
    where ref = '00001')
    Devrait te renvoyer ta ligne...
    (Ca marche aussi avec des fonctions analytiques)

  3. #3
    Nouveau membre du Club
    Inscrit en
    Septembre 2008
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 28
    Points : 25
    Points
    25
    Par défaut
    ok merci j'essaye ça

  4. #4
    Nouveau membre du Club
    Inscrit en
    Septembre 2008
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 28
    Points : 25
    Points
    25
    Par défaut
    ça a l'air de marcher merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Besoin d'aide requete sql
    Par whippette dans le forum Langage SQL
    Réponses: 2
    Dernier message: 24/04/2009, 16h52
  2. besoin aide sur requete
    Par olivier777 dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 05/05/2008, 18h02
  3. Besoin aide pour Requete SQL
    Par mystik11 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 17/07/2006, 11h34
  4. besoin d'aide -> requete sur 2 tables avec count()
    Par parksto dans le forum Requêtes
    Réponses: 3
    Dernier message: 20/10/2005, 19h06
  5. Besoin d'aide requete sql
    Par dinde dans le forum Langage SQL
    Réponses: 1
    Dernier message: 12/10/2005, 09h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo