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請求天。
謝謝。
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請求天。
謝謝。
只要使用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)
一個簡單的方法是按日期:
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")
是由於這是一個好主意,添加以及在select中添加date_format()。 –
試試這個:
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')
爲什麼你沒有做「GROUP BY日期(u_d_a_c)」? – PaulF
我測試了SELECT COUNT(*)爲 WHERE user_date_account創建了BETWEEN(now() - INTERVAL 15 DAY)和now() GROUP BY year(user_date_accountcreated),month(user_date_accountcreated),day(user_date_accountcreated)'並且我有一個錯誤#1064 - 你的SQL語法錯誤;在WHERE –
附近,你忘了'from'部分... –