为什么这个订单不再有效呢?

时间:2017-01-30 23:38:59

标签: mysql

假设我有MySQL表格,如:

Users (id)
Posts (id, user_id, created)

然后,假设我想尝试获取每个用户的最新帖子

SELECT * FROM(SELECT * FROM posts ORDER BY created DESC) AS b GROUP BY user_id

它没有正确返回最近的帖子,但是,它没有分组时。执行此类查询的正确方法是什么?

1 个答案:

答案 0 :(得分:3)

你似乎在思考它 - 想想eaiser。

假设您的帖子ID是连续的,那么最大的ID对应于最新的帖子 - 你可以得到这样的数据:

select user_id, id, created from Posts where id in
(select max(id) from posts group by user_id)