SQL 開窗函數:range和rows的區別


range基於order by的值計算,如圖一,order by的值為20190101

rows基於order by排好的順序的行計算,如圖二,計算排序后的行

range可應用於訂單日期

rows可應用於訂單筆數

圖一

注意:第一個窗口第2行金額425的時間計算范圍是:20190101~20190103,共四筆訂單金額的均值(不是3筆)

           第二個窗口第1行金額550的時間計算范圍,理論是20190102~20190104,但該窗口下無20190102訂單(雖然在第一個窗口有20190102的訂單),故實際計算20190103~20190104共兩筆訂單金額的均值

 

圖二

 

 

 

 其他參考:

SQL Server Windowing Functions: ROWS vs. RANGE – SQLpassion


免責聲明!

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



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