Task5:SQL高階處理
阿新 • • 發佈:2020-12-25
視窗函式
視窗函式也稱為OLAP函式。OLAP 是OnLine AnalyticalProcessing 的簡稱,意思是對資料庫資料進行實時分析處理。
示例程式碼:
<視窗函式> OVER ([PARTITION BY <列名>]
ORDER BY <排序用列名>)
PARTITON BY是用來分組,即選擇要看哪個視窗,類似於GROUP BY 子句的分組功能,但是PARTITION BY 子句並不具備GROUP BY 子句的彙總功能,並不會改變原始表中記錄的行數。
ORDER BY是用來排序,即決定視窗內,是按那種規則(欄位)來排序的。
專用視窗函式
RANK函式
:計算排序時,如果存在相同位次的記錄,則會跳過之後的位次。
DENSE_RANK
:同樣是計算排序,即使存在相同位次的記錄,也不會跳過之後的位次。
ROW_NUMBER函式
:賦予唯一的連續位次
字串函式