T-SQL 随机返回特定行数据和分页查询
2013-09-28 21:31
246 查看
T-SQL 随机返回特定行数据和分页查询
T-SQL 语言相较于标准SQL添加了很多特性,为了提高SQL Server的表现,是有必要深入了解的,面试时一般也会包含这两个小问题。首先,是在一个AdventureWorks中Person.Address中随机返回5行信息,可以如下写:
SELECT TOP 5 * FROM ( SELECT *,NEWID() as RandomID FROM Person.Address ) t ORDER BY t.RandomID
关键在于调用了内置函数NEWID()生成的随机数,并排序,取前5行。
分页查询,需要查询Person.Address中按城市排序后的第50-200行,当然可以写一个存储过程来专门按参数来查询。
SELECT * FROM ( SELECT *,ROW_NUMBER() OVER (ORDER BY City) as RowNumber FROM Person.Address ) AS t WHERE t.RowNumber BETWEEN 50 AND 200
关键是采用了ROW_NUMBER()函数,计算在所有查询行中当前行是排行第几,再筛选最后的结果。
总结:用一些语言的特性,虽然绑定了平台,不过,在一个大平台上,就无所谓了,用它还是值得的。
相关文章推荐
- T-SQL 随机返回特定行数据和分页查询
- 在论坛中出现的比较难的sql问题:5(row_number函数 分页、随机返回数据)
- MySQL中数据结果集分页功能的实现方法;数据库查询返回特定结果即分页查询
- 分页查询十万条以上数据的sql语句
- SQL查询返回数据多列,保存在list中时,怎么取值
- 从Mysql某一表中随机读取n条数据的SQL查询语句
- mysql 同时返回查询总数及分页数据
- SQL数据分页查询的方法
- sql 随机查询数据
- 用SQL语句实现随机查询数据并不显示错误数据
- SQL查询显示行号、随机查询、取指定行数据
- Sql查询数据分页显示
- Querying Microsoft SQL Server 2012 读书笔记:查询和管理XML数据 1 -使用FOR XML返回XML结果集
- SQL查询显示行号、随机查询、取指定行数据
- sql随机查询数据
- oracle12c JSON数据 使用SQL语句实现多表左外连接 显示无效数据 分页查询
- SQL查询显示行号、随机查询、取指定行数据
- SQL语句返回多表联合查询的结果集的数据条数
- MVC中使用Linq To Sql进行数据查询及分页
- SQL查询显示行号、随机查询、取指定行数据