博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
rank() | dense_rank() | row_number() over(PARTITION BY sex order by age desc ) 的区别
阅读量:4949 次
发布时间:2019-06-11

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

1、row_num() over()函数:根据某个字段排序后编号1,2,3。。

select *,ROW_NUMBER() over ( order by majorid) as num

from StudentInfo s

 

2、rank() over(PARTITION BY 字段A order by 字段B desc ) 

根据字段A分组 每组根据字段B排名(每组中字段B值相等的话排名就相等 有并列排名时,如两个第二名 紧接着的就是第四名 跳跃的)

select *,RANK() over(PARTITION BY sex order by age desc ) as dd
from StudentManager.dbo.Student

 

3、dense_rank() over(PARTITION BY 字段A order by 字段B desc ) 和2的区别就是 即使每组内有并列排名 下个排名有不会跳跃

select *,dense_RANK() over(PARTITION BY sex order by age desc ) as dd
from StudentManager.dbo.Student

 

这三个函数over中的 order by都是必须滴 partial by可选 没有则整个结果集为一个分组。 

转载于:https://www.cnblogs.com/lxf1117/p/4484170.html

你可能感兴趣的文章
Upselling promotion stored procedure
查看>>
mysql编码配置
查看>>
KVM地址翻译流程及EPT页表的建立过程
查看>>
sigar
查看>>
iOS7自定义statusbar和navigationbar的若干问题
查看>>
c++ 网络编程(一)TCP/UDP windows/linux 下入门级socket通信 客户端与服务端交互代码...
查看>>
程序员如何提高影响力:手把手教你塑造个人品牌
查看>>
身份证校验原理和PHP实现
查看>>
[Locked] Wiggle Sort
查看>>
deque
查看>>
计算机
查看>>
Ext JS学习第十三天 Ext基础之 Ext.Element
查看>>
python--迭代器与生成器
查看>>
SQL之case when then用法详解
查看>>
STL 排序函数
查看>>
Microsoft Dynamics CRM 2011 面向Internet部署 (IFD) ADFS虚拟机环境搭建的步骤(CRM与ADFS装在同一台服务器上) 摘自网络...
查看>>
Setting up a Passive FTP Server in Windows Azure VM(ReplyCode: 227, Entering Passive Mode )
查看>>
Atitit mtp ptp rndis midi协议的不同区别
查看>>
Ajax辅助方法
查看>>
Python模块调用
查看>>