2010-09-28 17 views
2

Je rencontre des problèmes avec GROUP BY. Il retourne la première entrée qu'il pourrait trouver, mais je voudrais qu'il retourne la dernière entrée. Est-ce possible?Obtenez les dernières entrées en utilisant GROUP BY

Voici ma requête (requête préparée):

SELECT stamp_user, stamp_date, stamp_type 
FROM rws_stamps 
WHERE stamp_date >= ? 
GROUP BY stamp_user 
ORDER BY stamp_date DESC 

Ma table ressemble à ceci:

alt text

Ce que je veux revenir est la ligne 7 et 3, mais je reçois 1 et 2.

Répondre

1

Essayez:

SELECT stamp_user, max(stamp_date), stamp_type 
FROM rws_stamps 
WHERE stamp_date >= ? 
GROUP BY stamp_user, stamp_type 
+0

Je l'ai utilisé avec un peu de PHP pour le faire fonctionner. – Marwelln