2009-06-29 133 views
0

此SQL語句分組結果按日期在MySQL

SELECT `ip`, `when` FROM `metrics` WHERE `vidID` = '1' GROUP BY DATE('when') 

返回一個結果,即使多個存在於與不同的日期表。我也嘗試過使用DATE_FORMAT。我在做一些愚蠢的事情嗎?

When是一個帶有完整時間戳的時間戳列,包括小時,分鐘和秒。我試圖按照日/月/年的結果進行分組。

回答

4

看起來像你正在按常量字符串'when'分組而不是字段when

用這個代替:

GROUP BY DATE(`when`) 

聽起來像是你要算IP地址給定日期:

SELECT COUNT(`ip`) AddressCount, `when` 
FROM `metrics` 
WHERE `vidID` = '1' 
GROUP BY DATE(`when`) 
+0

+1只是打敗了我 – 2009-06-29 16:37:42

+0

感謝您的回覆,Welbog ...發生語法錯誤 – waxical 2009-06-29 16:38:53

0

通常情況下,使用GROUP BY連同一些聚合函數(如SUM,說)來計算一列或多列的結果集。你想在這裏完成什麼?你的意思是排序,或只是得到一個摺疊列表哪些IP有記錄在哪些日期?