【T-SQL系列】新的排序函数
原文:【T-SQL系列】新的排序函数

如:ROW_NUMBER、RANK、DENSE_RANK
三个分析函数都是按照col1分组内从1开始排序

ROW_NUMBER() 是没有重复值的排序(即使两天记录相等也是不重复的),可以利用它来实现分页
DENSE_RANK() 是连续排序,两个第二名仍然跟着第三名
RANK() 是跳跃拍学,两个第二名下来就是第四名

示例:

DECLARE @t1 TABLE(Sequence INT ,Name VARCHAR(20) ,Score INT)INSERT  INTO @t1SELECT  1 ,'甲' ,7UNION ALLSELECT  2 ,'甲' ,8UNION ALLSELECT  3 ,'甲' ,8UNION ALLSELECT  4 ,'甲' ,8UNION ALLSELECT  5 ,'甲' ,9UNION ALLSELECT  1 ,'乙' ,10UNION ALLSELECT  2 ,'乙' ,6UNION ALLSELECT  3 ,'乙' ,10UNION ALLSELECT  4 ,'乙' ,6UNION ALLSELECT  5 ,'乙' ,8SELECT  Sequence ,Name ,Score ,ROW_NUMBER() OVER ( ORDER BY Sequence, Score ) AS RowNumber1 ,ROW_NUMBER() OVER ( ORDER BY Sequence, Score DESC ) AS RowNumber2 ,RANK() OVER ( ORDER BY Score ) AS Rnk ,DENSE_RANK() OVER ( ORDER BY Score ) AS DenseRnk ,NTILE(15) OVER ( ORDER BY Score ) AS Bucket
FROM    @t1

结果集:

posted on 2014-12-02 09:13 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/4136596.html

【T-SQL系列】新的排序函数相关推荐

  1. list对oracle结果集排序了_详解SQL窗口函数和分组排序函数

    Mysql从8.0版本开始,也和Sql Server.Oracle一样支持在查询中使用窗口函数,本文将根据官方文档,通过实例介绍窗口函数并举例分组排序函数的使用. 英语好的大佬请移步官方文档~点我! ...

  2. SAP HANA SQL系列四:数字函数

    数字函数 数字函数 ABS ACOS ASIN ATAN ATAN2 BINTOHEX BITAND CEIL COS COSH COT EXP FLOOR GREATEST HEXTOBIN LEA ...

  3. oracle sql时间排序函数,sql的rank函数

    SQL SERVER 2008排序函数(窗口函数) 排序函数可以用来协助给结果集增加位置信息.SQL SERVER 2008只有四个排序函数,介绍如下: ROW_NUMBER:返回结果集中给定行的序号 ...

  4. SQL中常用的窗口函数(排序函数)-row_number/rank/dense_rank/ntile

    总结四个函数的特点: row_number():连续不重复:1234567 rank() :重复不连续:1222567 dense_rank():重复且连续:1222345 ntile():平均分组: ...

  5. Sql Server系列:排序函数

    在SQL Server中有4个排序函数:ROW_NUMBER().RANK().DENSE_RANK()及NTILE()函数. 1. ROW_NUMBER()函数 ROW_NUMBER()函数为每条记 ...

  6. sql ROW_NUMBER() 排序函数

    sql ROW_NUMBER() 排序函数 1使用row_number()函数进行编号:如 View Code 1 select email,customerID, ROW_NUMBER() over ...

  7. mysql的组内排序生成序号_sql 分组查询,组内排序, 组内添加序号 (SQL Server 排序函数 ROW_NUMBER和RANK 用法总结)...

    下面的例子和SQL语句均在SQL Server 2008环境下运行通过,使用SQL Server自带的AdventureWorks数据库. -- 添加序列号 -- 行号用法: ROW_NUMBER() ...

  8. SQL中常用的四个排序函数

    我们在写SQL代码时,只要有排序,首先想到的肯定是ORDER BY,以至于好多小伙伴觉得排序多简单啊. 今天就给大家介绍四个你不怎么常用排序函数,他们就是SQL Server排序中经常用到的ROW_N ...

  9. SQL中的排序函数【row_number() 、rank() 、dense_rank() 】

    一.SQL中有三种排序函数 1.row_number() over(order by 列名) 2.rank() over(order by 列名) 3.dense_rank() over(order ...

最新文章

  1. scrum看板工具做问题跟踪
  2. TaxonKit:小巧、高效、实用的NCBI分类学数据命令行工具
  3. 各种字符串分拆处理函数.sql
  4. CodeForces - 560E Gerald and Giant Chess(组合数学+dp)
  5. jquery1.9 下检测浏览器类型和版本
  6. Windows NT OS 的技术架构图
  7. webstorm 添加php插件,webstorm常用插件分享
  8. kvm启动报错Could not access KVM kernel module: Permission denied
  9. oracle怎么使用包,oracle包(package)入门——应用实例
  10. [转载] python 字符串方法大全
  11. 15年程序员老兵的40条编程技巧,句句都是血泪史!
  12. 在企业级开发中使用Try...Catch...会影响效率吗?
  13. 流水灯c语言单片机实验报告,实验一51单片机流水灯实验实验报告.doc
  14. 技能 | 制作excel版学生成绩分析表
  15. 桌面计算机找不到硬盘,bios找不到硬盘完美解决方法 选择STATConfigur
  16. html中形状代码,用css与div代码绘制一些常见的各种形状的图形
  17. 【PADS_002】【添加泪滴】
  18. php 正则保留数字和,只保留汉字,字母,数字正则
  19. 零基础如何入门编程开发?
  20. Qt之流式布局(FlowLayout)

热门文章

  1. Apollo进阶课程 ① | 带你纵览无人车
  2. Linux下root登陆mysql
  3. php工程导致系统蓝屏,经常蓝屏是什么原因
  4. linux内核支持的加密算法,Linux Kernel(Android) 加密算法总结(三)-应用程序调用内核加密算法接口...
  5. asp.net mvc 缓存CaChe使用
  6. 微软引入linux内核,微软内部已在讨论Linux内核中加入exFAT的可能性
  7. java 德生读卡器对接程序_德生TSW-F4 社保卡读卡器.rar
  8. python的代码复用技术_Python__函数和代码复用
  9. oracle推送短信,ORACLE 10G如何实现发短信的服务?
  10. python如何运用ols_使用OLS回归(Python,StatsModels,Pandas)预测未来值