La requête est connue sous le nom de groupwise maximum , qui (au moins dans MySQL) peut être implémenté avec une sous-requête. Par exemple :
SELECT my_table.* FROM my_table NATURAL JOIN (
SELECT user_id, MAX(created_at) created_at
FROM my_table
GROUP BY user_id
) t
Voir sur sqlfiddle .