Mysql 请提供一个SQL脚本,查询表中城市大于或等于6的人
下面是ABC数据库中的客户表。 人员表: 目标是提供一个SQL脚本来查询表中出现的城市大于或等于>=6的人 例如: 居住在新加坡的人数是10人 住在香港的人数是5 住在洛杉矶的人数是6` 所以在这个例子中,输出应该是所有居住在新加坡和洛杉矶的人 我的结果可能是:Mysql 请提供一个SQL脚本,查询表中城市大于或等于6的人,mysql,sql,sql-server,Mysql,Sql,Sql Server,下面是ABC数据库中的客户表。 人员表: 目标是提供一个SQL脚本来查询表中出现的城市大于或等于>=6的人 例如: 居住在新加坡的人数是10人 住在香港的人数是5 住在洛杉矶的人数是6` 所以在这个例子中,输出应该是所有居住在新加坡和洛杉矶的人 我的结果可能是: SELECT * FROM Person WHERE (SELECT City FROM Person GROUP BY City)>6 也许有什么不对劲。希望有人能帮助我。谢谢。您可以将其中一种反连接模式与临时表一起使用,其
SELECT * FROM Person WHERE (SELECT City FROM Person GROUP BY City)>6
也许有什么不对劲。希望有人能帮助我。谢谢。您可以将其中一种反连接模式与临时表一起使用,其中列出了符合您条件的城市:
SELECT p.*
FROM Person p
LEFT JOIN ( SELECT City
FROM Person
GROUP BY City
HAVING COUNT(*) >= 6
) t ON t.City = p.City
WHERE t.City IS NOT NULL
我已经使用COUNT函数计算了表中每个城市的发生率,我使用该函数得到了您想要的结果,该结果输出了发生率为6及以上的城市。请尝试我的查询:
SELECT
ID,
Name,
Salary,
A.City
FROM Person
LEFT JOIN
(SELECT City,Count(City) CityCount FROM Person GROUP BY City)B
ON A.City=B.City WHERE CityCount >= 6
我们不是来为你工作的。请编写您自己的代码或让我们知道您支付了多少。请查看Count、group by和Have Clause Select*from Person,其中Select City from Person group by City Have Count*>6?顺便说一句,您的RDBMS是什么?
SELECT
ID,
Name,
Salary,
A.City
FROM Person
LEFT JOIN
(SELECT City,Count(City) CityCount FROM Person GROUP BY City)B
ON A.City=B.City WHERE CityCount >= 6