如何提取分組取前N條的記錄

字號:

問題:
     新手來看:如何寫分組取前N條的 SQL 語句?
    有這樣一個表:
    ID RID
    001 001
    002 001
    003 001
    004 004
    005 004
    006 004
    007 007
    008 007
    009 009
    010 010
    希望取得每組RID相同的前2條記錄,即:
    ID RID
    001 001
    002 001
    004 004
    005 004
    007 007
    008 007
    009 009
    010 010
    能否用盡可能簡單的語句實現(xiàn)?請各位指點
    回答:
    select *
    from t as a
    where id in(select top 2 id from t where rid=a.rid order by id)