【发布时间】:2021-08-22 10:58:30
【问题描述】:
所以,我有两张桌子:
EMP {EMP_NO, EMP_SALARY, EMP_DEPT_NO}
DEPT {DEPT_NO, DEPT_MNG}
EMP_NO,DEPT_NO - 主键,EMP_DEPT_NO - DEPT 的外部键,DEPT_MNG - EMP 的外部键。
我需要找到每个员工都有相同薪水的所有部门。
【问题讨论】:
标签: mysql sql database postgresql oql
所以,我有两张桌子:
EMP {EMP_NO, EMP_SALARY, EMP_DEPT_NO}
DEPT {DEPT_NO, DEPT_MNG}
EMP_NO,DEPT_NO - 主键,EMP_DEPT_NO - DEPT 的外部键,DEPT_MNG - EMP 的外部键。
我需要找到每个员工都有相同薪水的所有部门。
【问题讨论】:
标签: mysql sql database postgresql oql
您可以使用HAVING 部分中的COUNT DISTINCT 来实现此目的。 COUNT DISTINCT 将返回某个部门的薪水有多少变化。
SELECT DEPT_NO
FROM DEPT JOIN EMP ON DEPT.DEPT_NO=EMP.EMP_DEPT_NO
GROUP BY DEPT_NO
HAVING COUNT(DISTINCT SALARY) =1
【讨论】: