是的,关于查询的另一个问题(肯定会有比mySQL手册更有用的语法指南吗?)
我有这个问题(来自另一个有用的答案)......
SELECT DATE_FORMAT(`when`, '%e_%c_%Y')date, COUNT(`ip`) AddressCount FROM `Metrics` WHERE `ID` = '1' GROUP BY DATE(`when`)
我现在想要进行类似的查询以获得IP的唯一/不同结果...即每个日期的唯一访问者。我的疑问是......
SELECT DATE_FORMAT(`when`, '%e_%c_%Y')date, COUNT(distinct `ip`) AddressCount FROM `Metrics` WHERE `ID` = '1' GROUP BY DATE(`when`)
然而,这会返回重复的日期,但Addresscount的数量不同......
date AddressCount
29_6_2009 1
30_6_2009 1
29_6_2009 1
30_6_2009 1
29_6_2009 1
NULL 1
15_5_2009 1
14_5_2009 2
NULL 3
14_5_2009 4
15_5_2009 1
26_6_2009 1
29_6_2009 1
26_6_2009 1
15_5_2009 1
26_6_2009 1
29_6_2009 1
关于我哪里出错的任何想法?
答案 0 :(得分:2)
您的小组将需要匹配您选择的数据,因此这应该有效:
SELECT DATE_FORMAT(`when`, '%e_%c_%Y')date, COUNT(distinct `ip`) AddressCount FROM `Metrics` WHERE `ID` = '1' GROUP BY date
答案 1 :(得分:0)
尝试
SELECT DATE_FORMAT(
when
,'%e_%c_%Y')日期,COUNT(不同ip
)AddressCount FROMMetrics
WHEREID
='1'GROUP截止日期(何时)
在MySQL中使用保留字时可能会遇到一些错误