博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
T-SQL 随机返回特定行数据和分页查询
阅读量:5100 次
发布时间:2019-06-13

本文共 613 字,大约阅读时间需要 2 分钟。

T-SQL 语言相较于标准SQL添加了很多特性,为了提高SQL Server的表现,是有必要深入了解的,面试时一般也会包含这两个小问题。

 

首先,是在一个AdventureWorks中Person.Address中随机返回5行信息,可以如下写:

SELECT TOP 5 * FROM(    SELECT *,NEWID() as RandomID    FROM Person.Address) tORDER BY t.RandomID

关键在于调用了内置函数NEWID()生成的随机数,并排序,取前5行。

 

分页查询,需要查询Person.Address中按城市排序后的第50-200行,当然可以写一个存储过程来专门按参数来查询。

SELECT * FROM(    SELECT *,ROW_NUMBER() OVER (ORDER BY City) as RowNumber    FROM Person.Address) AS tWHERE t.RowNumber BETWEEN 50 AND 200

关键是采用了ROW_NUMBER()函数,计算在所有查询行中当前行是排行第几,再筛选最后的结果。

 

总结:用一些语言的特性,虽然绑定了平台,不过,在一个大平台上,就无所谓了,用它还是值得的。

转载于:https://www.cnblogs.com/ProJKY/p/tsqlRandomRowANDRank.html

你可能感兴趣的文章
洛谷 1449——后缀表达式(线性数据结构)
查看>>
[最小割][Kruskal] Luogu P5039 最小生成树
查看>>
Data truncation: Out of range value for column 'Quality' at row 1
查看>>
Dirichlet分布深入理解
查看>>
(转)Android之发送短信的两种方式
查看>>
python第九天课程:遇到了金角大王
查看>>
字符串处理
查看>>
ECharts(Enterprise Charts 商业产品图表库)初识
查看>>
LeetCode Factorial Trailing Zeroes (阶乘后缀零)
查看>>
hdu 5402 Travelling Salesman Problem (技巧,未写完)
查看>>
[AIR] 获取U盘,打开U盘
查看>>
HtmlUnitDriver 网页内容动态抓取
查看>>
ad logon hour
查看>>
获得进程可执行文件的路径: GetModuleFileNameEx, GetProcessImageFileName, QueryFullProcessImageName...
查看>>
证件照(1寸2寸)拍摄处理知识汇总
查看>>
罗马数字与阿拉伯数字转换
查看>>
Eclipse 反编译之 JadClipse
查看>>
asp.net 获取IP地理位置的几个主要接口
查看>>
Python入门-函数
查看>>
[HDU5727]Necklace(二分图最大匹配,枚举)
查看>>