久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

MySQL 8.0窗口函數怎么運行

138次閱讀
沒有評論

共計 1307 個字符,預計需要花費 4 分鐘才能閱讀完成。

今天就跟大家聊聊有關 MySQL 8.0 窗口函數怎么運行,可能很多人都不太了解,為了讓大家更加了解,丸趣 TV 小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

# ROW_NUMBER()  當前行在所有結果里的序號
# CUME_DIST()  累計分布百分比。即   =a  的行數在所有數據里占的比例
# PERCENT_RANK()  百分比排名。 (rank - 1) / (rows - 1) ,即累計 ( a) 行數 /(total-1)
SELECT
 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
 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);

看完上述內容,你們對 MySQL 8.0 窗口函數怎么運行有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注丸趣 TV 行業資訊頻道,感謝大家的支持。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-28發表,共計1307字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 安康市| 册亨县| 平乐县| 环江| 清苑县| 呼伦贝尔市| 荣成市| 西平县| 宁陵县| 龙山县| 沈阳市| 松潘县| 荔浦县| 乐东| 辽阳县| 洛南县| 青冈县| 仁化县| 梅州市| 临泽县| 张北县| 平顶山市| 渝中区| 迭部县| 屯留县| 灵丘县| 邹城市| 崇义县| 禹城市| 隆尧县| 廊坊市| 杂多县| 易门县| 郯城县| 无极县| 壤塘县| 桃园县| 隆昌县| 利津县| 延安市| 乌海市|