MySQL 8.0 窗口函數

MySQL 8.0 新增窗口函數,與oracle 窗口函數相似,屬於mysql的一大特色
1.ROW_NUMBER () OVER ()生成新序列,按照c2排序,生成新序列
MySQL 8.0 窗口函數
按照c1分組,c2排序生成序列
MySQL 8.0 窗口函數
2.cume_dist() OVER ()在某種排序條件下,小於等於當前行值的行數/總行數
按照c1分組,c2排序,求當前行值的行數/總行數
MySQL 8.0 窗口函數
3.rank() OVER ()相似於row_number() 生成新排序
按照c1分組,c2排序,生成新序列,當兩個排序值相同時rank值相同
MySQL 8.0 窗口函數
4.PERCENT_RANK() OVER ()當前RANK值-1/總行數-1
MySQL 8.0 窗口函數
5.DENSE_RANK() OVER ()爲了解決rank()編號存在的問題的,好比rank值出現兩個1,會跳過2,而DENSE_RANK不會
MySQL 8.0 窗口函數
6.FIRST_VALUE() OVER ()按照某種方式排序,求第一個值
MySQL 8.0 窗口函數
7.LAST_VALUE() OVER ()按照某種分組排序求最後一個值
MySQL 8.0 窗口函數
8.NTH_VALUE() OVER ()按某種方式排序求某一行的值
MySQL 8.0 窗口函數
9.LAG(id) OVER ()按某種方式排序求上一行的值
MySQL 8.0 窗口函數
10.lead () OVER ()按某種方式排序求下一行的值
MySQL 8.0 窗口函數
11.將數據按照某些排序分紅N組
MySQL 8.0 窗口函數
12.CTE 公用表達式,非遞歸的CTE,查詢最新重複註冊的用戶
MySQL 8.0 窗口函數
13.CTE 公用表達式,遞歸的CTE,
MySQL 8.0 窗口函數mysql

相關文章
相關標籤/搜索