SQL排序
2012-12-25 17:02 Max蚊子 阅读(235) 评论(0) 编辑 收藏 举报Transact-SQL提供了4个排名函数: RANK(),DENSE_RANK(),ROW_NUMBER(),NTILE()
--演示例题,建一个table
create table rankorder( orderid int, qty int ) go
SELECT orderid,qty, ROW_NUMBER() OVER(ORDER BY qty) AS rownumber, RANK() OVER(ORDER BY qty) AS [rank], DENSE_RANK() OVER(ORDER BY qty) AS denserank , NTILE(3) OVER(ORDER BY qty) AS [NTILE] FROM rankorder ORDER BY qty
--结果
--ROW_NUMBER()是按qty由小到大逐一排名,不并列,排名连续
--RANK()是按qty由小到大逐一排名,并列,排名不连续
--DENSE_RANK()是按qty由小到大逐一排名,并列,排名连续
--NTILE()是按qty由小到大分成3组逐一排名,并列,排名连续
※如果你觉得这篇文章不错,请点击推荐。如果你觉得我写的对你有用请关注我。
作者:Max蚊子
网站:feiger.cn 飞鸽博客,关注互联网、站长圈的程序员博客!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
作者:Max蚊子
网站:feiger.cn 飞鸽博客,关注互联网、站长圈的程序员博客!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。