取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 desc3.
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 如果是sql server 2005 可以这样写:
select top 20 * from T order col
except
select top 2 * from T order col
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 desc3.
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 如果是sql server 2005 可以这样写:
select top 20 * from T order col
except
select top 2 * from T order col
解决方案 »
- 求最大最小值,简单sql
- sql统计问题
- 如何将表的结构,存储过程和表内容一起写入或生成sql脚本
- 一个超级简单,但有有疑问的问题
- 新手提问......200分相求,只能放100分,另外100分另开贴(决不食言)!!!!!!!!!
- 关于字符型 字段 排序问题
- 监控SiYuanLibraryMS数据库中DDL_DATABASE_LEVEL_EVENTS级别的所有事件
- ado连接sqlserver2005 求各位帮忙啊!!!
- 求SQL?
- 为什么连不上SQL Server2000,出现如下报错
- 高分求解!如何修改表、存储过程和视图的创建过程?
- SQL2005 错误日志:大量Login failed for user 'sa'出现,有谁知道怎么回事啊?
select top m * from tablename where id not in (select top n id from tablename order by id asc/*|desc*/) 2.
select top m * into 临时表(或表变量) from tablename order by columnname -- 将top m笔插入到临时表
set rowcount n --只取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 identity_col between n and m 6.SQL2005开始.可以使用row_number() over()生成行号
;with cte as
(
select id0=row_number() over(order by id),* from tablename
)
select * from cte where id0 between n to m
--假设id为主键
select top 10 * from
(select top 40 * from 表 order by id desc) tt
select top 10 * from (
select top 40 * from tb order by id) t
order by id desc不连续可以
不是连续的也能查出来