sql中如何查询出我所要的记录(例如:我想要第20条到第30条的记录,表中没有自动增长的列)
高手们。。。
参考答案:(1)你的表中如果有排序字段,可以先正序取前30条,然后反序取前11条。
drop table ##data
select top 30 * into ##data from 表名 order by 列名
select top 11 * from ##data order by 列名 desc
(2)你的表中如果没有排序字段,你还不想排序以免打乱原有行的顺序,这种情况比较少见,我也可以给你一个方法,
drop table ##data1
drop table ##data2
select top 30 * into ##data1 from 表名
select top 19 * into ##data2 from 表名
select * from ##data1 as a
where not exists(select * from ##data2 as b where a.列名=b.列名 )
两种方法选的列最好是主键,或是唯一值。