写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。

1: select top 10 * from A where id not in (select top 30 id from A)

演变步骤:

1select top 30 id from T_FilterWords--取前条

2select * from T_FilterWords

where id not in (select top 30 id from T_FilterWords)--id不等于前三十条的

--也就是把前条排除在外

3select top 10 * from T_FilterWords

where id not in (select top 30 id from T_FilterWords)

--取把前条排除在外的前条,也就是-40

2: select top 10 * from A where id > (select max(id) from (select top 30 id from A )as A)

解答3:用ROW_NUMBER实现

猜你喜欢

转载自www.cnblogs.com/damugua/p/11773569.html
今日推荐