文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>一条Sql语句:取出表A中第31到第40记录(面试题)

一条Sql语句:取出表A中第31到第40记录(面试题)

时间:2010-09-21  来源:落叶潇潇雨

写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。
答:解1: select top 10 * from A where id not in (select top 30 id from A) 

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

 普通做法

select top 10 productid 

from Production.Product

where productid not in(

select top 30 productid from Production.Product

order by productid asc

) order by productid asc

 

 临时表做法

declare  @table table (id int identity(1,1),pid int)

insert @table(pid) 

select productid 

from Production.Product

order by productid asc


select productid from Production.Product t1

inner join @table t2 on t1.productid=t2.pid

where t2.id>30 and t2.id<=40 

 

sqlserver2005做法

select * from 

(

select productid, ROW_NUMBER() OVER(ORDER BY productid asc) as rowid

from Production.Product

)T

where T.rowid>30 and rowid<=40 
相关阅读 更多 +
排行榜 更多 +
别惹神枪手安卓版

别惹神枪手安卓版

冒险解谜 下载
坦克战争世界

坦克战争世界

模拟经营 下载
丛林反击战

丛林反击战

飞行射击 下载