知道SQL2005有个新特性,行号,如何用行号取表中第10到20条数据?

解决方案 »

  1.   

    select * from (select ROW_NUMBER() OVER (ORDER BY id) rn,t.* from tablename t) a where rn>=10 and rn<=20
      

  2.   

    ;with Tb  as
    (
     select id0=row_number() over(order by id),* from tablename
    )
    select * from Tb where id0 between n to m
      

  3.   

    select * from (select ROW_NUMBER() OVER (ORDER BY id) rn,t.* from 表名 t) 
    a where rn between 10 and 20 
      

  4.   

    select * from (select ROW_NUMBER() OVER (ORDER BY id) rn,t.* from 表名 t)  
    a where rn between 10 and 19 
      

  5.   

    再稍微改一下
    select * from (select ROW_NUMBER() OVER (ORDER BY id) rn,t.* from 表名 t)   
    a where rn between 11 and 20