2016-07-14 39 views
-1

我有一些登錄日期在數據庫中,並希望得到一些統計日期分組。Mysql組通過不正確的計數

我想擁有的是:

2016-07-01 : 13 different users logged in 
2016-07-02 : 9 different users logged in 
2016-07-01 : 12 different users logged in 
... 

我弄到:

2016-07-01 : 13 different users logged in 
2016-07-02 : 13 different users logged in 
2016-07-01 : 13 different users logged in 

我的查詢:

SELECT COUNT(DISTINCT user_id) as num, zeitstempel 
FROM log 
WHERE zeitstempel BETWEEN DATE_SUB(CURRENT_DATE, INTERVAL 50 DAY) AND CURRENT_TIMESTAMP 
GROUP BY DATE(zeitstempel) 
ORDER BY DATE(zeitstempel) ASC 

沒有任何人有一個解決方案,爲什麼這個查詢不管用?

+0

可以更新錯誤消息 –

+0

@MaheshMadushanka請花一些秒鐘時,[建議編輯](http://stackoverflow.com/review/suggested-edits/13006414)妥善解決這一問題。只是添加4個空格而不刪除'並不能真正改進格式。此外,像您介紹的通知不是必需的,因爲它可以在[修訂歷史記錄](http://stackoverflow.com/posts/38374077/revisions)中看到。您將很快獲得單獨編輯帖子的特權。請明智地使用它。 – Matt

+0

請注意zeitstempel將是不確定的。沒有數據集的結果集與沒有棒棒糖的棒一樣有趣。 – Strawberry

回答

0

希望這會有所幫助。

SELECT COUNT(DISTINCT user_id) as num, zeitstempel FROM log 
WHERE zeitstempel BETWEEN DATE_SUB(CURRENT_DATE, INTERVAL 50 DAY) AND DATE(CURRENT_TIMESTAMP) 
GROUP BY DATE(zeitstempel) 
ORDER BY DATE(zeitstempel) ASC 

您正在使用CURRENT_TIMESTAMP,您必須使用DATE(CURRENT_TIMESTAMP)。