mysql 分布函数 PERCENT_RANK()、CUME_DIST()


 

 

PERCENT_RANK()

每行按照公式(rank-1) / (rows-1)进行计算。其中,rank为RANK()函数产生的序号,rows为当前窗口的记录总行数

CUME_DIST()

分组内小于、等于当前rank值的行数 / 分组内总行数

SELECT id, score
, rank() OVER (ORDER BY score DESC) AS 'rank'
, dense_rank() OVER (ORDER BY score DESC) AS 'dense_rank'
, row_number() OVER (ORDER BY id DESC) AS 'row_number'
, row_number() OVER (partition by score ORDER BY id DESC) AS 'row_number1'
, PERCENT_RANK() OVER (ORDER BY score DESC) AS 'PERCENT_RANK'
, CUME_DIST() OVER (ORDER BY score) AS 'CUME_DIST'
, CUME_DIST() OVER (PARTITION BY score ORDER BY id) AS 'CUME_DIST1'
FROM scores
order by id

 

https://blog.csdn.net/Hzfeng666/article/details/109612895


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM