分组结果按日期在MySQL
问题描述:
此SQL语句分组结果按日期在MySQL
SELECT `ip`, `when` FROM `metrics` WHERE `vidID` = '1' GROUP BY DATE('when')
返回一个结果,即使多个存在于与不同的日期表。我也尝试过使用DATE_FORMAT
。我在做一些愚蠢的事情吗?
When
是一个带有完整时间戳的时间戳列,包括小时,分钟和秒。我试图按照日/月/年的结果进行分组。
答
看起来像你正在按常量字符串'when'
分组而不是字段when
。
用这个代替:
GROUP BY DATE(`when`)
听起来像是你要算IP地址给定日期:
SELECT COUNT(`ip`) AddressCount, `when`
FROM `metrics`
WHERE `vidID` = '1'
GROUP BY DATE(`when`)
答
通常情况下,使用GROUP BY连同一些聚合函数(如SUM,说)来计算一列或多列的结果集。你想在这里完成什么?你的意思是排序,或只是得到一个折叠列表哪些IP有记录在哪些日期?
+1只是打败了我 – 2009-06-29 16:37:42
感谢您的回复,Welbog ...发生语法错误 – waxical 2009-06-29 16:38:53