大众计算机学习网

专门提供各种电脑教程

SQL2005查询介于某个数据范围的记录

Admin | 2014-8-31 6:28:29 | 被阅次数 | 3372

  SQL2005查询介于某个数据范围的记录,查询语句有多种,下面为大家介绍几种。

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

  在SQL2005中可以使用如下代码:

  select * from

  (

  select productid, ROW_NUMBER() OVER(ORDER BY productid asc) as rowid from A.Product

  )T

  where T.rowid>30 and rowid<=40

  当然,如果想使用简单语句,也可以使用下面的两条语句。

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

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

  其它版本的做法:

  select top 10 productid from A.Product

  where productid not in(

  select top 30 productid from A.Product

  order by productid asc

  ) order by productid asc