查询员工表中每个部门中前三名工资最高的员工信息
SELECT DEPARTMENT_NAME,
LAST_NAME,
SALARY,
row_number() OVER (PARTITION BY DEPARTMENT_NAME ORDER BY SALARY DESC) AS RANK
FROM EMPLOYEES T1,
DEPARTMENTS T2
WHERE T1.DEPARTMENT_ID = T2.DEPARTMENT_ID
AND T2.DEPARTMENT_NAME = 'IT';
DEPARTMENT_NAME | LAST_NAME | SALARY | RANK |
IT | Hunold | 9000.00 | 1 |
IT | Ernst | 6000.00 | 2 |
IT | Austin | 4800.00 | 3 |
IT | Pataballa | 4800.00 | 4 |
IT | Lorentz | 4200.00 | 5 |
查询员工表中每个部门中工资排名前三的员工信息
SELECT DEPARTMENT_NAME,
LAST_NAME,
SALARY,
RANK() OVER (PARTITION BY DEPARTMENT_NAME ORDER BY SALARY DESC) AS RANK
FROM EMPLOYEES T1,
DEPARTMENTS T2
WHERE T1.DEPARTMENT_ID = T2.DEPARTMENT_ID
AND T2.DEPARTMENT_NAME = 'IT';
DEPARTMENT_NAME | LAST_NAME | SALARY | RANK |
IT | Hunold | 9000.00 | 1 |
IT | Ernst | 6000.00 | 2 |
IT | Austin | 4800.00 | 3 |
IT | Pataballa | 4800.00 | 3 |
IT | Lorentz | 4200.00 | 5 |
查询员工表中每个部门中工资相同的员工排名相同,排名前三的员工信息
SELECT DEPARTMENT_NAME,
LAST_NAME,
SALARY,
DENSE_RANK() OVER (PARTITION BY DEPARTMENT_NAME ORDER BY SALARY DESC) AS RANK
FROM EMPLOYEES T1,
DEPARTMENTS T2
WHERE T1.DEPARTMENT_ID = T2.DEPARTMENT_ID
AND T2.DEPARTMENT_NAME = 'IT';
DEPARTMENT_NAME | LAST_NAME | SALARY | RANK |
IT | Hunold | 9000.00 | 1 |
IT | Ernst | 6000.00 | 2 |
IT | Austin | 4800.00 | 3 |
IT | Pataballa | 4800.00 | 3 |
IT | Lorentz | 4200.00 | 4 |
查询员工表中每个部门中工资分成四组的信息
SELECT DEPARTMENT_NAME, LAST_NAME, SALARY,
NTILE(4) OVER (PARTITION BY DEPARTMENT_NAME ORDER BY SALARY DESC) AS GROUP_NUM
FROM EMPLOYEES T1,
DEPARTMENTS T2
WHERE T1.DEPARTMENT_ID = T2.DEPARTMENT_ID
AND T2.DEPARTMENT_NAME = 'IT';
DEPARTMENT_NAME | LAST_NAME | SALARY | GROUP_NUM |
IT | Hunold | 9000.00 | 1 |
IT | Ernst | 6000.00 | 1 |
IT | Austin | 4800.00 | 2 |
IT | Pataballa | 4800.00 | 3 |
IT | Lorentz | 4200.00 | 4 |
查询员工表中每个部门中每个员工的工资和上一个员工工资的差
SELECT DEPARTMENT_NAME, LAST_NAME, SALARY,
LAG(SALARY,1) OVER (PARTITION BY DEPARTMENT_NAME ORDER BY LAST_NAME) AS PREV_SALARY,
SALARY - LAG(SALARY,1) OVER (PARTITION BY DEPARTMENT_NAME ORDER BY LAST_NAME) AS DIFF
FROM EMPLOYEES T1,
DEPARTMENTS T2
WHERE T1.DEPARTMENT_ID = T2.DEPARTMENT_ID
AND T2.DEPARTMENT_NAME = 'IT';
DEPARTMENT_NAME | LAST_NAME | SALARY | PREV_SALARY | DIFF |
IT | Austin | 4800.00 | null | null |
IT | Ernst | 6000.00 | 4800 | 1200 |
IT | Hunold | 9000.00 | 6000 | 3000 |
IT | Lorentz | 4200.00 | 9000 | -4800 |
IT | Pataballa | 4800.00 | 4200 | 600 |
页面更新:2024-04-24
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号