3

我有一张表来存储网站访问者数量

id   date          ip            
-----------------------------
1    1-1-2012     195.165.1.2
2    1-1-2012     195.165.1.3
3    12-2-2012    195.165.1.8

我想要一个mysql查询来获取当年每个月的计数

4

3 回答 3

3

看到您的DATE专栏,我假设您将日期保存为VARCHAR

SELECT  MONTHNAME(STR_TO_DATE(date, '%c-%e-%Y')) `monthName`, COUNT(*) totalCount
FROM    tableName
WHERE   YEAR(STR_TO_DATE(date, '%c-%e-%Y')) = YEAR(CURDATE())
GROUP BY  MONTHNAME(STR_TO_DATE(date, '%c-%e-%Y'))

其他来源

于 2012-12-31T06:56:55.197 回答
0
"select month(date),count(distinct ip) from visitors where date>='$y-01-01' and date<'$y-12-31' group by 1"
于 2012-12-31T06:58:07.570 回答
0

SELECT YEAR(date) YEAR,MONTHNAME(date) MONTH,count(id) TOTAL FROM table_name GROUP BY YEAR(date),MONTH(date)

查询是这样的,因为来自同一 IP 的不同人可能会访问

于 2012-12-31T06:58:33.543 回答