学习型 ASP/PHP/ASP.NET 主机 30元/年全能 ASP/PHP/ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付
发新话题
打印

怎样查询表第5条道第10条的数据

怎样查询表第5条道第10条的数据

我想查询第5条到第10条的数据
请问怎样写?

TOP

select * from tablename where rownum between 5 and 10
努力成为菜鸟!

TOP

select * from tablename where sid between 5 and 10
这个是sid为标识列并且是正常排序的情况

TOP

select * from tablename where rownum >=5 and rownum <=10
刚学..以后一起进步...
学习需要安静。。海盗要重新来过。。

TOP

引用:
以下是引用 Saber0227 在 2008-3-19 16:56 的发言:

select * from tablename where sid between 5 and 10
这个是sid为标识列并且是正常排序的情况
楼上的兄弟说得对,这是正常排序的情况,,但我现在的ID不是正常排序不是从1开始。
我想达搜表的   第5列至第10列  
而不是ID排序的第5到第10,,怎么写?

TOP

select top 5 *
from tb
where id not in(select top 5 id from tb order by id)
order by id
我的msn: myfend@hotmail.com

TOP

取n到m条记录的语句

1.
select top m * from tablename where id not in (select top n id from tablename)

2.
select top m * into 临时表(或表变量) from tablename order by columnname -- 将top m笔插入
set rowcount n
select * from 表变量 order by columnname desc

3.
select top n * from  
(select top m * from tablename order by columnname) a
order by columnname desc


4.如果tablename里没有其他identity列,那么:
select identity(int) id0,* into #temp from tablename

取n到m条的语句为:
select * from #temp where id0 > =n and id0  <= m

如果你在执行select identity(int) id0,* into #temp from tablename这条语句的时候报错,那是因为你的DB中间的select into/bulkcopy属性没有打开要先执行:
exec sp_dboption 你的DB名字,'select into/bulkcopy',true


5.如果表里有identity属性,那么简单:
select * from tablename where identitycol between n and m
我的msn: myfend@hotmail.com

TOP

谢谢版主,很详细

TOP

发新话题