我想指定有>=3名员工的部门,在每个部门后面打印出部门员工的列表。
我有 2 张 table :
Employee_Table (Employee_Number, Employee_Name, Department_Number)
Department (Department_Number, Department_Name)
这是我的 SQL 代码:
SELECT ET.Department_Number,ET.Employee_Name
FROM dbo.Employee_Table ET
GROUP BY ET.Department_Number,ET.Employee_Name
HAVING COUNT(ET.Department_Number) >= 3
但是如果我运行什么也不会显示:
SELECT ET.Department_Number
FROM dbo.Employee_Table ET
GROUP BY ET.Department_Number
HAVING COUNT(ET.Department_Number) >= 3
我有一个正确的结果,即 101 和 105,但与 Employee_Name 结合我无法得到正确的结果。
最佳答案
SELECT
ET.Department_Number,
ET.Employee_Name
FROM Employee_Table ET
WHERE Department_Number IN
( SELECT Department_Number
FROM Employee_Table
GROUP by Department_Number
HAVING COUNT(*) >= 3
)
关于MySQL 查询没有显示正确的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29655754/