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

Requêtes PostgreSQL Discussion :

Aide : ramener l'enregistrement le plus récent


Sujet :

Requêtes PostgreSQL

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    103
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2006
    Messages : 103
    Par défaut Aide : ramener l'enregistrement le plus récent
    Bonjour à tous.

    Je me remet au SQL depuis peu et me prend la tête depuis une petite heure sur cette requête. Je vous mets un exemple de jeu d'essai représentatif de ma table :
    Alpha Date_saisie Locomotion
    -----------------------------------
    B 01/04/2010 moto
    A 25/03/2010 voiture
    A 21/03/2010 commun
    C 20/03/2010
    B 14/02/2010 voiture
    Ce que je veux en tirer, c'est pour chaque "alpha" (A, B, C) le dernier enregistrement saisi. Ici par exemple la requête devrait me ramener comme sous-ensemble :

    Alpha Date_saisie Locomotion
    -----------------------------------
    B 01/04/2010 moto
    A 25/03/2010 voiture
    C 20/03/2010
    Sachant que pour chaque alpha, le nombre d'enregistrement n'a pas vraiment d'ordre de grandeur, ça peut aller de 0 à 50.

    Merci d'avance pour vos indications.

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Par défaut
    Avec postgresql, il est possible d'utiliser DISTINCT ON pour arriver facilement au résultat.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select distinct on (alpha) * from ... order by alpha,date_saisie desc
    Remplacer * par les colonnes voulues.

    DISTINCT ON est une extension postgresql. Avec d'autres SGBD on fait typiquement une sous-requête qui renvoie chaque alpha et le max de la date associée, puis on joint ce résultat avec la table principale pour retrouver les valeurs des autres colonnes.

Discussions similaires

  1. Liste des enregistrements les plus récents
    Par calagan99 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 19/03/2008, 11h39
  2. Réponses: 5
    Dernier message: 25/01/2008, 20h26
  3. Ne conserver que les N enregistrement les plus récents.
    Par gomodo dans le forum Langage SQL
    Réponses: 2
    Dernier message: 21/01/2008, 19h46
  4. Trouver l'enregistrement le plus récent
    Par PrinceMaster77 dans le forum Langage SQL
    Réponses: 8
    Dernier message: 19/02/2005, 19h14
  5. recup des enregistrement les plus récents.
    Par julien_guy dans le forum Langage SQL
    Réponses: 8
    Dernier message: 29/06/2004, 11h04

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