我有一张这样的表:
group id
1 10
1 11
1 12
2 13
3 14
我想收回每个组的第一条记录,所以我的表应该返回这样的内容:
group id
1 10
2 13
3 14
在SQL中执行此操作的最佳方法是什么?
答案 0 :(得分:2)
这应该足够了:
SELECT group, min(id) id FROM table
GROUP BY group
考虑到“第一”这是考虑最小数量。
答案 1 :(得分:-1)
分组依据只会返回每组的第一行。所以分组就足够了
SELECT * FROM `your_table`
GROUP BY group
sql fiddle http://sqlfiddle.com/#!2/2673c/3