我在裏面寫上每個訂閱我的雜誌賣表,像這樣:現在計數續費出售
USERID | DATE |
31 | 2011-09-22 |
54 | 2011-09-22 |
59 | 2011-09-23 |
11 | 2011-10-02 |
88 | 2011-10-05 |
31 | 2011-10-06 |
17 | 2011-10-12 |
54 | 2011-10-15 |
31 | 2011-11-05 |
54 | 2011-11-12 |
,用於統計目的,我需要有一個結果,我在其中每個月都會看到我已售出多少訂閱以及一次購買多少用戶。
舉例來說,如果我們看一下在上面的DATAS,我應該有likie這一個結果:
DATE | SOLD | RENEWAL
09 | 3 | 0
10 | 5 | 1
11 | 2 | 2
我可以組訂閱每月的銷售,但我不能添加的「換新」信息。
SELECT COUNT(*) AS sold, MONTH(date) FROM table_sold WHERE date >= CURDATE() - INTERVAL 13 MONTH GROUP BY YEAR(date) , MONTH(date) ORDER BY date ASC LIMIT 1,15
這樣我只有這樣一個結果:
DATE | SOLD
09 | 3
10 | 5
11 | 2
我試過幾個選項,與子查詢,工會等,但沒有成功。 需要考慮的是該表有70.000個條目,並且具有硬掃描的查詢可能是個問題。
在你看來有沒有一種方法在MySQL或我已經採取這個想法,使其在PHP?
您是否需要處理某人讓其失敗,然後再重新訂閱的情況?這會算作是更新還是新的子?如果你不需要處理續訂,那麼你可以只計算每個ID('n')有多少點擊,然後是1次出售+(n-1)續約 – 2014-12-02 15:55:03