[英]MySQL group by DAY not showing results of current month
如查詢所述,它檢索從6月到8月的記錄,但為什么結果只顯示到7月31日?,我有從2014-06-08到2014-08-07的記錄。 既然今天的八月到今天八月有問題嗎?
SELECT COUNT(*) AS, DATE(created)
FROM battle
WHERE player_id = 1234 AND enemy_id = 4567
AND created BETWEEN '2014-06-01 00:00:00' AND '2014-08-31 23:59:59'
GROUP BY DAY(created)
ORDER BY created ASC;
您正在按DAY(created)
分組,這僅是一個月中的某天。 因此,它將6月1日,7月1日和8月1日合並為同一組,將6月2日,7月2日和8月2日合並為下一組,依此類推。
使用GROUP BY DATE(created)
將月份包括在分組中。
如下更改查詢
使用GROUP BY DATE(created)
而不是GROUP BY DAY(created)
SELECT COUNT(*) AS, DATE(created)
FROM battle
WHERE player_id = 1234 AND enemy_id = 4567
AND created BETWEEN '2014-06-01 00:00:00' AND '2014-08-31 23:59:59'
GROUP BY DATE(created)
ORDER BY created ASC;
嘗試這個:
SELECT COUNT(*) AS, DATE
FROM battle
WHERE player_id = 1234 AND enemy_id = 4567
AND Date BETWEEN '2014-06-01 00:00:00' AND '2014-08-31 23:59:59'
GROUP BY Date
ORDER BY Date ASC;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.