次のように、Employee と DepartmentId の 2 つの列で構成される Employees のテーブルがあります。
|Employee | DepartmentId
-------------------------
| e1 | 1
| e2 | 1
| e3 | 1
| e4 | 2
| e5 | 2
| e6 | 3
| e7 | 3
| e8 | 3
| e9 | 4
| e10 | 5
| e11 | 6
簡単なクエリで 2 人以上の従業員がいる部門を選択したいと考えています。次のことを思いつきました:
SELECT Department,
COUNT(Employee) as Quantity
FROM Employees
GROUP BY Department
HAVING (Quantity > 3)
ORDER BY Department
しかし、実行中に無効な列名 (Quantity) について不平を言います。集計関数を 2 回使用する (count() を選択 ... count() を使用する) ことは正しくないと確信しています。何か不足していますか?ps「簡単な」解決策は私が推測する
SELECT Department
FROM (SELECT Department, COUNT(Employee) AS Quantity
FROM Employees
GROUP BY Department)
WHERE Quantity > 5