2016-06-21 32 views
2

我在表中有這樣的數據:MySQL的 - 由天的間隔和數據

enter image description here

我需要計算「付費」用戶ID的字段,再次出現7天的時間間隔。在這個例子中,我將SUM(付費)用戶ID「01」,因爲它發生在7天的時間間隔2次。 我可以計算它programmaticaly,但只在這種日期間隔(2016-01-01 - 2016-01-07; 2016-01-07 - 2016-01-13;等)。 也許有可能在任何7天的時間間隔內在MySQL級別執行此計算?例如:2016-01-01 - 2016-01-07; 2016-01-02 - 2016-01-08; 2016-10-10 - 2016-10-16;等等

+0

看看本週的MySQL()函數。據推測,你可以通過UserID和星期(日期)對付費小組進行總結。 – user1676075

回答

0

我相信方法WEEK()返回基於日曆年的週數,這意味着2016年:1月1日,1月2日和1月3日將返回0,但1月4日將返回1,這對我來說是理所當然的不符合要求。

我建議:

SELECT `UserID`, SUM(`Paid`) FROM `table` GROUP BY DATEDIFF(`Date`, (SELECT MIN(`Date`) FROM `table`)) DIV 7, `UserID`