2012-01-08 72 views
5

我有一張表,通過將國家代碼添加到每行的「國家代碼」列來記錄我的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()函數...

回答

6

爲了讓您的示例輸出,您可以使用GROUP BYCOUNT()

SELECT Country, COUNT(*) 
FROM myTable 
GROUP BY Country 

COUNT(*)將統計行和GROUP BY Country將按國家劃分結果。結果將根據表格中的數據進行動態變化,因此如果您在不同國家/地區的表格中添加更多記錄,則無需更改查詢。

請參閱Group By in Books online

+0

謝謝工作完美!我會盡可能標記爲答案。 – 2012-01-08 23:45:51

+0

很高興能幫到你! – 2012-01-08 23:46:25

+0

如果您希望按降序次序返回,您可能還需要添加「ORDER BY COUNT(*)DESC」。 – GilM 2012-01-09 02:24:35