【发布时间】:2016-11-26 20:43:30
【问题描述】:
假设我有下表:
id coulmn_id value date
1 10 'a' 2016-04-01
1 11 'b' 2015-10-02
1 12 'a' 2016-07-03
1 13 'a' 2015-11-11
2 11 'c' 2016-01-10
2 23 'd' 2016-01-11
3 11 'c' 2016-01-09
3 111 'd' 2016-01-11
3 222 'c' 2016-01-10
3 333 'd' 2016-01-11
对于 n = 3,我想为每个 id 获取最新的 n 条记录
id column_id value date
1 10 'a' 2016-04-01
1 12 'a' 2016-07-03
1 13 'a' 2015-11-11
2 11 'c' 2016-01-10
2 23 'd' 2016-01-11
3 111 'd' 2016-01-11
3 222 'c' 2016-01-10
3 333 'd' 2016-01-11
【问题讨论】:
-
你的主键是什么?
-
上述问题的解决方案适用于有限数量的'group_name',日期字段可以很大..
-
主键 = id 和 column_id。我已经相应地更新了表格。
-
查看带有greatest-n-per-group标签的问题。这个问题已经回答了很多次了。
标签: mysql sql greatest-n-per-group