我正在尝试计算用户表中一组不同的城市和国家的出现次数。

该表的设置类似于:

userid  city       country
------  ---------  --------------
1       Cambridge  United Kingdom
2       London     United Kingdom
3       Cambridge  United Kingdom
4       New York   United States


我需要的是每个城市,国家/地区对的列表以及出现次数:

Cambridge, United Kingdom, 2
London, United Kingdom, 1
New York, United States, 1


目前,我运行SQL查询以获取不同的对:

$array = SELECT DISTINCT city, country FROM usertable


然后将其读入PHP中的数组,并遍历数组,运行查询以计算数组中每一行的每次出现次数:

SELECT count(*) FROM usertable
WHERE city = $array['city']
AND   country = $array['country']


我假设我对SQL的了解不足,缺少某些东西-这样做的正确方法是什么,最好是在没有PHP干预的情况下?

最佳答案

select city, country, count(*)
from usertable
group by city, country

关于sql - 计算SQL中不同的多列的出现次数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8940356/

10-12 22:29