Mysql
 sql >> Base de données >  >> RDS >> Mysql

MYSQL - Comment obtenir des colonnes non agrégées à partir d'une table basée sur une colonne agrégée

Essayez quelque chose d'un peu plus comme ceci :

Select al.id, al.activity, al.activity_id
From activty_log
Join (Select max(aa.activity_id) as ma From activity_log aa group by aa.id) As al2
 On al2.ma = al2.activity_id;

L'astuce consiste à obtenir le activity_id à partir du maximum de chaque groupe d'enregistrements qui partagent id dans une sous-requête, puis associez ces résultats pour obtenir les autres colonnes de cet enregistrement spécifique.