我有一个用户表,在这个表中我有一个国家/地区字段,告诉这些人来自哪里(即“瑞典”,“意大利”,...)。我怎样才能执行 SQL 查询以获得类似以下内容:
Country Number
Sweden 10
Italy 50
... ...
Run Code Online (Sandbox Code Playgroud)
用户从我提供给他们的列表中选择他们的国家/地区,但该列表确实很大,因此最好有一个可以避免使用该列表的 SQL 查询,即在数据库中查找并仅返回位于的国家/地区数据库,因为例如我没有来自巴巴多斯的人,即使我在注册表单的国家/地区选择字段中有该选项:)
提前致谢!
如果国家/地区名称位于 Users 表中,请尝试如下操作:
SELECT Country, COUNT (*) AS Number
FROM Users
GROUP BY Country
ORDER BY Country
Run Code Online (Sandbox Code Playgroud)
如果国家/地区名称在国家/地区表中,则您必须加入
SELECT Contries.CountryName, Count (*) AS Number
FROM Users
INNER JOIN Countries
ON Users.CountryId = Countries.CountryId
GROUP BY Countries.CountryName
ORDER BY Countries.CountryName
Run Code Online (Sandbox Code Playgroud)