2012-08-07 37 views
0

這是我的基本mysql查詢,它用於計算每日用戶數量,所以我需要從2012-01-30執行此操作,直到2012-02-19執行此操作手動修改它,有沒有什麼好方法?如何編寫一個循環在mysql中進行計算

select count(distinct user) FROM video WHERE date >= '2012-01-30 00:00' AND date <= '2012-01-30 23:55'; 


select count(distinct user) FROM video WHERE date >= '2012-01-31 00:00' AND date <= '2012-01-31 23:55'; 

... 

回答

2
SELECT DATE(date) AS date, COUNT(DISTINCT user) FROM video 
WHERE date >= '2012-01-30 00:00' AND date_pl <= '2012-02-19 00:00' 
GROUP BY DATE(date) 
+0

或'date_pl <「2012-02-20 00:00'' – 2012-08-07 13:41:46

+0

@GermannArlington - 你能肯定嗎?注意上面的OP語句使用'date_pl'作爲範圍的結束日期。只是範圍總是有一天。 – 2012-08-07 13:43:21

+0

我一直認爲'x <= someValue'等價於'x <(someValue + minimumIncrement)',這正是我所做的。 「or」部分不是建議代碼的一部分 – 2012-08-07 13:48:46