每天的SQL计数

时间:2016-10-03 15:42:46

标签: mysql sql count

过去15天的每一天是否可以一次性计算(*),就像我得到一天一样:

SELECT count(*) as total from users where `user_date_accountcreated` BETWEEN '2016-10-03 00:00:00' AND '2016-10-03 23:59:59'

避免每天发出一个SQL请求。

感谢。

3 个答案:

答案 0 :(得分:2)

只需使用mysql的日期函数:

SELECT ...
WHERE u_d_a_c BETWEEN (now() - INTERVAL 15 DAY) AND now()
GROUP BY year(u_d_a_c), month(u_d_a_c), day(u_d_a_c)

答案 1 :(得分:0)

试试这个:

SELECT DATE_FORMAT(user_date_accountcreated, '%Y-%m-%d'), count(*) AS total

    FROM users 

  WHERE

    DATEDIFF(CURDATE(), user_date_accountcreated) BETWEEN 1 AND 15

      GROUP BY DATE_FORMAT(user_date_accountcreated, '%Y-%m-%d')

答案 2 :(得分:-1)

一种简单的方法是按日期分组:

SELECT date_format(`user_date_accountcreated`, "%y%m%d"), count(*) as total from users 
where `user_date_accountcreated` BETWEEN '2016-09-18 00:00:00' AND '2016-10-03 23:59:59'
GROUP BY date_format(`user_date_accountcreated`, "%y%m%d")