Oracle中查询各个部门薪水第二第三高的员工姓名
只能一句话写出来不可以分两步
3条回答 默认 最新
- CSDN专家-文盲老顾 2021-07-05 15:41关注
select * from (select 部门,姓名,row_number() over(partition by 部门 order by 薪水 desc) as rid from 表) a where rid in (2,3) order by 部门,rid
oracle 里有 row_number 开窗函数,使用row_number对部分进行分组,并按薪水排序即可得到排名序号,如果有薪水重复的,用 rank或dense_rank代替row_number,具体oracle里这两个函数是否是这个名字我并不确定,你可以尝试一下
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥65 永磁型步进电机PID算法
- ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
- ¥88 找成都本地经验丰富懂小程序开发的技术大咖
- ¥15 如何处理复杂数据表格的除法运算
- ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
- ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
- ¥200 uniapp长期运行卡死问题解决
- ¥15 latex怎么处理论文引理引用参考文献
- ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
- ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?