SQL SERVER 2000 如何提高大數據篩選GROUP BY 的效率


 

數據庫有83W條記錄,本想計算20180101之后的每天賠付情況,故寫了以下SQL語句:

 

SELECT 起保時間,sum(賠付金額) as 日賠付

FROM maindata

WHERE 起保時間>'20180101' 

 GROUP BY 起保時間

 

結果每次執行要7.5S。

對 ‘起保時間’ 建立索引 速度反而加到7.8S。

經過多次測試,改成顯式從查詢結果GROUP BY ,效率大大提高,大概在1.1S,SQL語句如下:

SELECT 起保時間,sum(賠付金額) as 日賠付

FROM (SELECT 起保時間,賠付金額  FROM maindata WHERE 起保時間>'20180101') t

GROUP BY 起保時間

 

特記之!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM