当前位置: 首页 > news >正文

【窗口函数】RANK ()

RANK() 窗口函数(并列排名,跳名次)

函数说明

函数作用特点
RANK()分组排名相同值同名次,后续名次跳过,结果:1,1,3,4,4,6

实战案例:各部门工资前二的员工

数据表

Employee 员工表
idnamesalarydepartment_id
1Joe850001
2Henry800002
3San600002
4Max900001
5Janet690001
6Randy850001
7Will700001
Department 部门表
idname
1IT
2Sales

建表与测试数据

CREATETABLEDepartment(idINTPRIMARYKEYCOMMENT'部门编号',nameVARCHAR(20)NOTNULLCOMMENT'部门名称')ENGINE=InnoDBDEFAULTCHARSET=utf8mb4;INSERTINTODepartment(id,name)VALUES(1,'IT'),(2,'Sales');CREATETABLEEmployee(idINTPRIMARYKEYCOMMENT'员工工号',nameVARCHAR(20)NOTNULLCOMMENT'员工姓名',salaryINTNOTNULLCOMMENT'工资',department_idINTCOMMENT'部门编号',FOREIGNKEY(department_id)REFERENCESDepartment(id))ENGINE=InnoDBDEFAULTCHARSET=utf8mb4;INSERTINTOEmployee(id,name,salary,department_id)VALUES(1,'Joe',85000,1),(2,'Henry',80000,2),(3,'San',60000,2),(4,'Max',90000,1),(5,'Janet',69000,1),(6,'Randy',85000,1),(7,'Will',70000,1);

题目:基于两张表,查询每个部门工资前二高的员工,相同工资并列排名

selecttem.name,d.tem.department_name,tem.salaryfrom(selecte.nameasname,d.`name`asdepartment_name,e.salary,ROW_NUMBER()over(PARTITIONbydepartment_idORDERBYsalarydesc)asrank_idfromEmployee eleftjoinDepartment dond.id=e.department_id)temwheretem.rank_id<=2

运行结果

http://www.jsqmd.com/news/1100660/

相关文章:

  • 如何快速获取网盘直链:LinkSwift下载助手完整使用教程
  • 安达发|aps自动排单:为纺织行业数字化生产注入“增效魔法”
  • Node.js性能测试终极指南:Artillery与k6深度对比与实践
  • 从零实现Transformer:自注意力机制、多头注意力与位置编码详解
  • Fan Control深度解析:Windows平台高级风扇控制架构与实战配置
  • 24小时出货?猎板特急订单实战流程揭秘
  • Fuel Core:用 Rust 搭建的模块化区块链执行层
  • 告别路由器!用一根网线让ZYNQ7020开发板共享笔记本WiFi上网(Win10保姆级教程)
  • 从Selenium到指纹浏览器:浏览器自动化与反检测技术演进全解析
  • YonBIP开发实战:手把手教你搞定树形和表型参照(附完整前后端代码)
  • 技术产品路线图规划:从战略意图到可执行交付物的系统化拆解
  • 保姆级教程:用ESP8266-01和AT指令,5分钟搞定阿里云物联网平台设备连接与数据收发
  • 【VMware NAT端口转发终极指南】:20年虚拟化专家亲授5步精准配置法,99%用户忽略的3个致命陷阱!
  • Java的文本块与多行字符串在模板代码生成中的格式化处理
  • 告别纯数据炼丹:用PyTorch手把手教你给神经网络加上物理‘紧箍咒’
  • 告别Transformer卡顿?手把手带你用Vision Mamba跑通高分辨率图像分类(附代码)
  • 保姆级教程:用Python和Pandas手搓一个ETF网格交易回测脚本(附完整代码)
  • 2026论文投稿AI绘图实操:AI生草图+人工转矢量,彻底规避风险!
  • 原来新疆干果也有这么多讲究?
  • Next.js项目Cypress自动化测试实战:从配置到CI/CD集成
  • 3步实现浏览器直连桌面:WebRTC远程屏幕共享神器
  • wecomapi开发企业微信客户跟进记录如何与消息、标签和工单关联
  • 别再手动建模了!用Python脚本批量生成FreeCAD零件(附随机参数化代码)
  • 量化模型 GGUF 格式详解,如何在 Strix Halo 上节省显存跑大模型
  • 在树莓派4B上部署MobileNet-SSD:用OpenCV和Python实现实时物体检测(附完整代码)
  • 终极Windows优化指南:用Win11Debloat脚本彻底清理系统冗余
  • Proteus 8 + 8086 + 8255:手把手教你搭建一个会跑的流水灯(附完整汇编源码)
  • 用状态机搞定蓝桥杯嵌入式电梯题:STM32G431实战避坑指南
  • OVF导出卡在“正在打包”?紧急排查清单来了,10分钟定位磁盘校验、SSL证书、权限三重故障源
  • 【VMware虚拟网络架构实战指南】:3步搞定多台虚拟机跨网段通信,99%工程师都忽略的5个关键配置