如何提取分组取前N条的记录
问题:
新手:如何分组写前N条SQL语句?
有这样一张表:
ID RID
001 001
002 001
003 001
004 004
005 004
007 007
008 007
009 009
010 010
希望每组RID的前两个记录是相同的,即:
ID RID
001 001
004 004
005 004
007 007
。
能否用尽可能简单的语句实现?请指点。
回答:
select *
from t as a
where id in(select top 2 id from t where rid = a . rid order by id)
0条评论