获取3个或3个以上员工来自同一城市的员工名单?

Man*_*thi 4 sql sql-server select group-by count

我使用以下查询来查找具有3个以上员工的城市名称

SELECT M.NAME
FROM MasterCity M
INNER JOIN Employee E ON E.CityID = M.ID
GROUP BY E.CityID
HAVING count(E.CityID) >= 3;
Run Code Online (Sandbox Code Playgroud)

它给了我以下错误

Column 'MasterCity.Name' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Run Code Online (Sandbox Code Playgroud)

怎么了.?提前致谢

Dev*_*art 7

变种#1 -

SELECT MAX(M.Name) AS Name
FROM MasterCity M 
JOIN Employee E ON E.CityID = M.ID
GROUP BY E.CityID
HAVING COUNT(E.CityID) >= 3;
Run Code Online (Sandbox Code Playgroud)

变种#2 -

SELECT M.Name
FROM MasterCity M 
JOIN Employee E ON E.CityID = M.ID
GROUP BY E.CityID, M.Name
HAVING COUNT(E.CityID) >= 3;
Run Code Online (Sandbox Code Playgroud)