我有一个表,它通过在每行的“国家/地区代码”列中添加国家/地区代码来记录我的Web应用程序中的用户位置。每行代表对特定区域的访问。

所以我有一些数据

COL1    COL2    COL3    countrycode
asd     asd     asd        NZ
asd     asd     asd        NZ
asd     asd     asd        NZ
asd     asd     asd        US
asd     asd     asd        US

我想做的就是查询该表,并在下面显示给我类似的东西
Country    Count
   NZ        3
   US        2

但是我需要它能够为出现的任何其他国家/地区代码添加一行。我无法解决这个问题,我知道我需要以某种方式使用COUNT()函数...

最佳答案

要获取示例输出,可以使用GROUP BYCOUNT()

SELECT Country, COUNT(*)
FROM myTable
GROUP BY Country
COUNT(*)将计算行数,并且GROUP BY Country将结果按国家/地区划分。结果将基于表中的数据而动态变化,因此,如果您在表中添加了其他国家/地区的更多记录,则无需更改查询。

参见Group By in Books online

关于sql-server - 计算和合并行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8782434/

10-12 05:55