用一条sql取得第10到第20条的记录_Mssql数据库教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:解决SQLSERVER2005的混和身份验证模式的设置以及SA登陆问题
Question: 安装2005的时候,没有设置混合验证模式,只用了Window身份验证,现在要写数据库连接字符串,如果用window身份验证写比较麻烦,所以想到了怎样把SQL的登陆方式从Window改为SQLServer登陆方式呢?折腾了一下,终于有了答案。 Answer: 1、先用Window

因为id可能不是连续的,所以不能用取得10<id<20的记录的方法。

有三种方法可以实现:
一、搜索前20条记录,指定不包括前10条
语句:
select top 20 * from tbl where id not in (select top 10 id from tbl)
二、搜索记录生成临时表,建立临时表的自增id。通过取得自增id的10<id<20的记录的方法取得所需数据
语句:
select identity(int,1,1) as id,* into #temp from tbl;
select * from #temp where id between 10 and 20
第二个方法实际上是两条语句,但你可以让他连续执行,就像一条语句一样完成任务。

三、朋友们觉得第一种方法效率太低,经过讨论,得出第三种方法:
语句:
SELECT TOP 10 * FROM (SELECT TOP 20 * FROM tblORDER BY id) as tbl2 ORDER BY tbl2.id DESC

分享:SQL SERVER与ACCESS、EXCEL的数据转换
熟悉SQL SERVER 2000的数据库管理员都知道,其DTS可以进行数据的导入导出,其实,我们也可以使用Transact-SQL语句进行导入导出操作。在Transact-SQL语句中,我们主要使用OpenDataSource函数、OPENROWSET 函数,关于函数的详细说明,请参考SQL联机帮助。利用

来源:模板无忧//所属分类:Mssql数据库教程/更新时间:2010-05-19
相关Mssql数据库教程