MySQL 8.0 視窗函式-筆記
# ROW_NUMBER() 當前行在所有結果裡的序號 # CUME_DIST() 累計分佈百分比。即 <=a 的行數在所有資料裡佔的比例 # PERCENT_RANK() 百分比排名。 (rank - 1) / (rows - 1) ,即累計(< a)行數/(total-1) SELECT a, ROW_NUMBER() OVER w AS 'row_number', CUME_DIST() OVER w AS 'cume_dist', PERCENT_RANK() OVER w AS 'percent_rank' FROM tbt WINDOW w AS (ORDER BY a);
# LAG(expr [, N[, default]]) N 預設是1,default 預設是null # LEAD(expr [, N[, default]]) N 預設是1,default 預設是null SELECT create_time, id, LAG(id) OVER w AS '上1行的id', LEAD(id) OVER w AS '下1行的id', LAG(id, 3, 0) OVER w AS '上3行的id', LEAD(id, 3, 0) OVER w AS '下3行的id' FROM tbt WINDOW w AS (ORDER BY create_time);
# FIRST_VALUE(val) 同一個分組,第一個值 # LAST_VALUE(val) 同一個分組,最後一個值 # NTH_VALUE(val, N) 同一個分組,第N值 SELECT a, create_time, id, FIRST_VALUE(id) OVER w AS 'first', LAST_VALUE(id) OVER w AS 'last', NTH_VALUE(id, 3) OVER w AS 'third' FROM tbt WINDOW w AS (PARTITION BY a ORDER BY create_time);
# NTILE(N) 將同一個partition(如果未定義,則相當於全表) 分為N組,返回當前行所在的組序號
SELECT
a,
ROW_NUMBER() OVER w AS 'row_number',
NTILE(2) OVER w AS 'ntile2',
NTILE(4) OVER w AS 'ntile4'
FROM tbt
WINDOW w AS (ORDER BY a);
SELECT a, create_time, ROW_NUMBER() OVER w AS 'row_number', NTILE(2) OVER w AS 'ntile2', NTILE(4) OVER w AS 'ntile4' FROM tbt WINDOW w AS (PARTITION BY a ORDER BY create_time);
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26250550/viewspace-2689311/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Mysql視窗函式MySql函式
- mysql視窗函式中的滑動視窗MySql函式
- MySQL視窗函式彙總MySql函式
- MySQL視窗函式用法總結MySql函式
- MySQL視窗函式的具體使用TOCSMySql函式
- Hive視窗函式Hive函式
- SQL 視窗函式SQL函式
- PostgreSQL:視窗函式SQL函式
- Oracle分析函式與視窗函式Oracle函式
- hive視窗函式使用Hive函式
- MYSQL學習筆記14: 函式MySql筆記函式
- mysql8.0學習筆記MySql筆記
- hive視窗分析函式使用詳解系列二之分組排序視窗函式Hive函式排序
- MYSQL學習筆記7: 聚合函式MySql筆記函式
- 與SQL視窗函式相同SQL函式
- PostgreSQL>視窗函式的用法SQL函式
- hive05_視窗函式Hive函式
- SQL視窗分析函式使用詳解系列三之偏移量類視窗函式SQL函式
- MySQL中的ROW_NUMBER視窗函式簡單瞭解下MySql函式
- MYSQL學習筆記15: 數值函式MySql筆記函式
- 微軟外服工作札記③——視窗函式的介紹微軟函式
- Hive視窗函式保姆級教程Hive函式
- MySQL資料庫基礎篇視窗函式示例解析教程RATZMySql資料庫函式
- PostgreSQL 視窗函式 ( Window Functions ) 如何使用?SQL函式Function
- 詳解SQL操作的視窗函式SQL函式
- 通俗易懂:視窗函式 | 全是案例函式
- 筆記:Python函式筆記Python函式
- python筆記-函式Python筆記函式
- SQL輕鬆入門(5):視窗函式SQL函式
- Solidity語言學習筆記————27、檢視函式Solid筆記函式
- MySQL8.0-分組函式ROLLUP的基本用法(GROUPING)MySql函式
- 【筆記】普通生成函式筆記函式
- MySQL 8.0 Reference Manual(讀書筆記68節--Deadlocks)MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記90節--Replication)MySql筆記
- mysql 5.7 vs 8.0預設值變化(筆記)MySql筆記
- MySQL筆記 13 檢視MySql筆記
- hive視窗分析函式使用詳解系列一Hive函式
- SQL KEEP 視窗函式等價改寫案例SQL函式