ROW_NUMBER() & RANK() - 第二高的叶数 - SQL Server
https://i.sstatic.net/FH0Z8.png
我需要帮助来编写 SQL查询打印请假第二多的员工的姓名。
因此,我需要使用 ROW_NUMBER()
和 RANK()< 从
HumanResources.Employee
表中获取第二高的休假数(休假 + 病假) /code> SQL Server Adventureworks2019
示例数据库中。
感谢您抽出时间。
SQL查询:
SELECT
S.BusinessEntityID, LEAVES,
ROW_NUMBER() OVER (PARTITION BY LEAVES ORDER BY LEAVES) AS RN
FROM
(SELECT
BusinessEntityID,
(VacationHours + SickLeaveHours) AS LEAVES
FROM
[HumanResources].[Employee]) S
GROUP BY
LEAVES, S.BusinessEntityID
ORDER BY
LEAVES DESC
https://i.sstatic.net/FH0Z8.png
I need help to write a SQL query to print the names of the employees that took the second-highest leaves.
So I need to get the 2nd highest no of leaves (vacation leaves + sick leaves) from the HumanResources.Employee
table using ROW_NUMBER()
and RANK()
in the SQL Server Adventureworks2019
sample database.
Thanks for your time.
SQL query:
SELECT
S.BusinessEntityID, LEAVES,
ROW_NUMBER() OVER (PARTITION BY LEAVES ORDER BY LEAVES) AS RN
FROM
(SELECT
BusinessEntityID,
(VacationHours + SickLeaveHours) AS LEAVES
FROM
[HumanResources].[Employee]) S
GROUP BY
LEAVES, S.BusinessEntityID
ORDER BY
LEAVES DESC
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
第二高...
输出:
Second highest...
output: