MySql : grouper + dernier enregistrement

Résolu/Fermé
Bertrand40 Messages postés 1193 Date d'inscription vendredi 27 mars 2009 Statut Membre Dernière intervention 27 février 2023 - Modifié par Bertrand40 le 30/03/2010 à 01:39
Bertrand40 Messages postés 1193 Date d'inscription vendredi 27 mars 2009 Statut Membre Dernière intervention 27 février 2023 - 30 mars 2010 à 12:16
Salut,

Je n'arrive pas à faire une requête mysql, ça fait des heures que je me prends la tête.

J'ai trouvé peut-être une réponse ici, le problème étant grosso modo le même que le mien : https://www.webrankinfo.com/forum/t/mysql-group-by-sur-le-dernier-enregistrement.111217/

Le problème c'est que je ne comprends pas la réponse donnée :
select t1.pays, t1.product, t1.date
from tb t1
where t1.date = (select max(t2.date) from tb t2 where t2.pays=t1.pays)
ORDER BY pays


Une âme charitable voudrait-elle bien :
1- me dire si la réponse donnée sur ce forum est correcte
2- le cas échéant m'expliquer brièvement les t1 et t2 (requêtes imbriquées ?)
3- le cas non échéant (je sais pas si ça se dit) avez-vous une idée pour m'aider ?

Désolé si tout ça est mal présenté, j'en ai ras le Q..

Bonne nuit.

EDIT : grosso modo mon problème c'est qu'un DISTINCT renvoie l'ID le plus petit or il me faudrait le plus grand.. :(



Le jambon de Bayonne c'est bon ! Non, disons que personnellement je trouve ça bon.
A voir également:

1 réponse

Bertrand40 Messages postés 1193 Date d'inscription vendredi 27 mars 2009 Statut Membre Dernière intervention 27 février 2023 192
30 mars 2010 à 12:16
J'ai finalement trouvé par moi-même.

Je mets mon bout de code même s'il est difficile de le mettre dans le contexte puisque j'ai pas cité mon exemple perso :

SELECT MAX(ID) FROM ma_table GROUP BY com ORDER BY MAX(ID) DESC

Ca pourrait servir sait-on jamais..?
1