2011-06-09 157 views
2

我有一個訂單表,其中包含每個訂單的日期和金額,這個表很大,包含更多的1000000條記錄和增長。mysql查詢彙總

我們需要創建一組查詢來計算某些里程碑,是否有一種方法可以在mysql中找出我們到達x總計里程碑的日期。

對於如我們越過「2011-01-01」

目前我們掃描整個表,然後在PHP中使用邏輯弄清楚日期1米銷售,但是這將是巨大的,如果這可能是在MySQL中完成,沒有在一次讀取這麼多的記錄。

回答

1

有可能是優雅的方法,但你可以做的是在另一個表中保存一行,其中包含current_sales和它發生的日期。每次進行銷售時,增加價值並存儲銷售日期。如果事先知道預期的里程碑(100萬,200萬等),可以在發生時將它們存儲起來(在相同或不同表格中)

+1

我認爲這將是要走的路,感謝提示。 – user160108 2011-06-09 07:25:38

0

我認爲使用槍手的邏輯與觸發器將是一個不錯的選擇,因爲它減少你的維護行的努力,然後你可以通過觸發器發送郵件通知,以瞭解里程碑狀態