2010-05-16 36 views
2

統計數據庫中的元素(很抱歉的冠軍,我真的不知道如何短語:-))MySQL的基於有多少唯一值有在外地

我有了一個表日期和uid字段。

我需要獲得UID的數量每個日期,目前我在做這在PHP運行多個查詢,像這樣的:

SELECT COUNT(uid) FROM users where Date = 'xxx'; 

有一個簡單的辦法只有一個SQL實現這一目標查詢?

+0

你想計算唯一值還是總行數?您的標題和您的查詢相互矛盾。或者在這張桌子上是「獨一無二」的?在這種情況下,沒有區別。 :) – 2010-05-16 11:21:57

回答

4

by子句使用組:

SELECT Date, COUNT(uid) FROM users group by Date; 
+0

@ 0plus1:請注意,這不會計算唯一值,它會計算**所有**值。如果這是你想要的,你應該調整問題的標題來匹配。 – 2010-05-16 12:46:05

0
SELECT Date, COUNT(uid) FROM users GROUP BY Date 
1

要計算的唯一值使用DISTINCT數量:

SELECT COUNT(DISTINCT uid) AS cnt 
FROM users 
GROUP BY `Date` 

如果你的列是一個日期時間,那麼你應該使用DATE功能僅獲取日期部分:

SELECT COUNT(DISTINCT uid) AS cnt 
FROM users 
GROUP BY DATE(`Date`)