Mysql查询GROUP by和ORDER by

时间:2016-07-18 14:01:19

标签: mysql

我有一个名为 msg 的表,其中我存储了所有消息。 我想选择具有唯一用户的所有行,但只选择具有MAX Id 字段的行。

1 个答案:

答案 0 :(得分:1)

http://sqlfiddle.com/#!9/9ebdc/1

您可以从找到MAX

开始
SELECT 
 MAX(id) max_id
FROM msg
GROUP BY user_id;

然后将其用作过滤器:

SELECT *
FROM msg
WHERE id IN (
SELECT 
 max(id) max_id
FROM msg
GROUP BY user_id);