2 derniers TIMESTAMP de chaque ID

Résolu
mikesunshine59 Messages postés 75 Statut Membre -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai une table avec ces données :

ID, Timestamp, Valeur
Orange, 30/01/2018, 51
Orange, 31/01/2018, 52
Orange, 01/02/2018, 53
Orange, 02/02/2018, 54
Orange, 03/02/2018, 55
Poire, 30/01/2018, 40
Poire, 31/01/2018, 41
Poire, 01/02/2018, 42
Poire, 02/02/2018, 43
Poire, 03/02/2018, 44
Pomme, 30/01/2018, 35
Pomme, 31/01/2018, 36
Pomme, 01/02/2018, 37
Pomme, 02/02/2018, 38
Pomme, 03/02/2018, 39

La requête doit me donner le résultat ci-dessous :

Orange, 02/02/2018, 54
Orange, 03/02/2018, 55
Poire, 02/02/2018, 43
Poire, 03/02/2018, 44
Pomme, 02/02/2018, 38
Pomme, 03/02/2018, 39

Pouvez vous m'aider svp ?

2 réponses

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour,

    Pour commencer... tu parles de TIMESTAMP dans ton titre.... et tu nous montres des dates au format français...
    Déjà là ..ça ne va pas.
    Il faut que tu utilises un vrai format de date reconnu en BDD (champ de type DATE ou DATETIME ou TIMESTAMP )
    0
    1. mikesunshine59 Messages postés 75 Statut Membre
       
      oui merci disons que c'est une date.

      Vous savez comment on fait pour obtenir le résultat stp ?
      0
    2. mikesunshine59 Messages postés 75 Statut Membre
       
      Je n'ai rien compris.
      0
    3. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Pourtant ça me semble bien expliqué et avec des exemples...
      Que te faut il de plus ?
      0
    4. mikesunshine59 Messages postés 75 Statut Membre
       
      Une aide plus précise par rapport à mon exemple. Ca fait deux jours que j'essaye de comprendre. D'où l'objet de mon exemple précis.
      Merci quand même d'avoir répondu.
      0
  2. mikesunshine59 Messages postés 75 Statut Membre
     
    Voici le code utilisé :
    SELECT MarketName, Datecreation, Last
       FROM
         (SELECT MarketName, Datecreation, Last,
                      @id_rank := IF(@current_id = MarketName, @id_rank + 1, 1) AS id_rank,
                      @current_id := MarketName
           FROM getmarketsummaries
           ORDER BY MarketName, Datecreation DESC
         ) ranked
       WHERE id_rank <= 2
    ORDER BY MarketName, Datecreation;
    


    EDIT : Ajout des balises de code (la coloration syntaxique).

    Explications disponibles ici :ICI

    Merci d'y penser dans tes prochains messages.
    Jordane45


    Je n'ai que les mêmes valeurs. Et non pas deux pour chaque.
    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Bonsoir,

      Déjà :
      1 - Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
      Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

      2 - Je pense qu'un DUMP de ta table nous serait plus qu'utile pour t'aider à comprendre ce qui ne va pas.
      Si tu ne sais pas le faire : https://www.inmotionhosting.com/support/website/phpmyadmin-export-table/
      (et tu nous colles le contenu du fichier sql ici )
      0
      1. mikesunshine59 Messages postés 75 Statut Membre > jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Bonjour,
        Avez vous pu testé avec le DUMP ?
        0
      2. mikesunshine59 Messages postés 75 Statut Membre > jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Bonjour Jordane45,

        Quand penses tu pouvoir m'aider stp ?

        Merci,
        0
    2. mikesunshine59 Messages postés 75 Statut Membre
       
      Bonsoir

      Voici le DUMP

      -- phpMyAdmin SQL Dump
      -- version 4.7.7
      -- https://www.phpmyadmin.net/
      0