Récupérer les deux dernières dates par ID

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

J'utilise le code ci-dessous pour récupérer les deux dernières 'Datecreation' pour chaque 'MarketName'. Je remarque que cela ne me donne pas les deux dernières 'Datecreation' pour chaque 'MarketName' et je ne comprends pas pourquoi.

Je précise que DateCreation est dans ce format : YYYY-MM-DD HH:MM:SS (Exemple : 2018-02-11 09:25:02)

Pouvez-vous m'aider svp ?


SELECT
getmarketsummaries.*
FROM
getmarketsummaries INNER JOIN (
SELECT
MarketName,
GROUP_CONCAT(Datecreation ORDER BY MarketName DESC) grouped_Datecreation
FROM
getmarketsummaries
GROUP BY MarketName) group_max
ON getmarketsummaries.MarketName = group_max.MarketName
AND FIND_IN_SET(Datecreation, grouped_Datecreation) BETWEEN 1 AND 2
ORDER BY
getmarketsummaries.MarketName, getmarketsummaries.Datecreation DESC
A voir également:

1 réponse

yg_be Messages postés 24281 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 585
 
bonjour, et ceci?
SELECT id, Timestamp
   FROM
     (SELECT id, Timestamp, 
		@id_rank := IF(@cur_id = ID, @id_rank + 1, 1) AS id_rank,
                  @cur_id := id
       FROM (SELECT *, @cur_id:=id from testy.t_testy
       ORDER BY id, Timestamp DESC) ordered
       ) ranked
   WHERE id_rank <= 2
ORDER BY id, Timestamp;
0