嗨,我遇到了以下查询的问题。
SELECT id, user_id, cloth_id FROM `items` GROUP BY user_id ORDER BY id desc LIMIT 3
我想要group by
的最新记录,但不知何故显示旧记录。
我也经历了MySQL - Group by with Order by DESC但未按预期工作。
答案 0 :(得分:1)
试试这个:
SELECT i.id, i.user_id, i.cloth_id FROM
(
SELECT max(id) as id, user_id FROM `items` GROUP BY user_id
) temp
LEFT JOIN `items` i on i.user_id = temp.user_id AND i.id = temp.id
在temp
中,每个用户都会获得最新的身份证明
在i
中,您获得该组合的cloth_id