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 MySQL Discussion :

Tri: date et conditionnel


Sujet :

Requêtes MySQL

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2013
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Juin 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Tri: date et conditionnel
    Bonjour à tous,
    avant toute question, un petit mot pour vous dire que je viens de passer presque 2h sur la fonction recherche, en vain... merci pour votre indulgence si ma question de débutant vous apparaît évidente

    Voilà mon problème:
    J'utilise Pentaho Data Integration pour "aspirer" des données depuis une base mySQL, les transformer, et les envoyer vers une base Postgresql. J'ai la possibilité donc de définir ma requête SQL au moyen d'un script type javascript.

    Ma base de données mySQL est composées de mesures liées à différents objets prises au cours du temps. Un exemple simplifié de ma table nommée TREND_I =>

    OBJET ; TS ; MESURE
    point1 ; 2013/06/24 ; 34
    point2 ; 2013/06/24 ; 56
    point1 ; 2013/06/23 ; 67
    point2 ; 2013/06/23 ; 35
    point3 ; 2013/06/23 ; 89
    point1 ; 2013/06/22 ; 12
    point2 ; 2013/06/22 ; 26
    point3 ; 2013/06/22 ; 34

    Mon objectif est d'extraire la dernière valeur mesurée pour chaque point. Après quelques heures sur google et ce même forum (je suis totalement novice en requêtes SQL), voici le script =>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT a.*
    FROM TREND_I AS a
    WHERE a.TS=(SELECT MAX(b.TS) from TREND_I b WHERE TS=b.TS)
    ORDER BY a.TS
    Comme vous l'aurez peut-être deviné, je n'obtiens ainsi que les mesures réalisées à la dernière date, pas la dernière mesure réalisée pour chaque point. Si je reprend l'exemple ci-dessus, je n'aurai donc que les mesures des points 1 et 2 du 24juin2013. J'ai également besoin de la mesure du point 3, réalisée pour la dernière fois le 23juin2013...

    D'avance merci à ceux qui prendront le temps de me lire , j'espère que tout cela est compréhensible et pas déjà abordé 100 fois sur ce forum...

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    bonjour,

    vous y êtes presque.

    Il faut utiliser un ggroup by dans une sous-requete afin d'avoir pour chaque point la date maximum.

    Ensuite réalisez une jointure entre cette sous-requete et votre table principale.

Discussions similaires

  1. Tri Dates variable tableau
    Par jojo86 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/01/2012, 19h25
  2. [AC-2007] Tri - Date Formaté - ordre croissant - Etat/Requête
    Par rch05 dans le forum IHM
    Réponses: 24
    Dernier message: 21/03/2011, 14h47
  3. Réponses: 35
    Dernier message: 12/03/2010, 10h34
  4. Tri date avec format spécial
    Par jojom13 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 12/01/2008, 15h21
  5. tri dates dans fenêtre modale
    Par TBMB51 dans le forum IHM
    Réponses: 1
    Dernier message: 12/11/2007, 09h12

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