2 derniers TIMESTAMP de chaque ID

Résolu
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. Modérateur
    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 )
    1. oui merci disons que c'est une date.

      Vous savez comment on fait pour obtenir le résultat stp ?
    2. Je n'ai rien compris.
    3. Modérateur
      Pourtant ça me semble bien expliqué et avec des exemples...
      Que te faut il de plus ?
    4. 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.
  2. 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.
    1. Modérateur
      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 )
    2. @jordane45Bonjour,
      Avez vous pu testé avec le DUMP ?
    3. @jordane45Bonjour Jordane45,

      Quand penses tu pouvoir m'aider stp ?

      Merci,