Hive _偏门常用查询函数(三)附带实例(Rank)
生活随笔
收集整理的這篇文章主要介紹了
Hive _偏门常用查询函数(三)附带实例(Rank)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
接上兩篇博客
Hive _偏門常用查詢函數(一)附帶實例
https://blog.csdn.net/qq_41946557/article/details/102904642
Hive _偏門常用查詢函數(二)附帶實例(列轉行、窗口函數)
https://blog.csdn.net/qq_41946557/article/details/102905208
Rank
1.函數說明
RANK() 排序相同時會重復,總數不會變
DENSE_RANK() 排序相同時會重復,總數會減少
ROW_NUMBER() 會根據順序計算
2.數據準備
vi rank 孫悟空 語文 87 孫悟空 數學 95 孫悟空 英語 68 大海 語文 94 大海 數學 56 大海 英語 84 宋宋 語文 64 宋宋 數學 86 宋宋 英語 84 婷婷 語文 65 婷婷 數學 85 婷婷 英語 78創建表:
create table score( name string, subject string, score int) row format delimited fields terminated by "\t"; 0: jdbc:hive2://henu2:10000> load data local inpath "/root/rank" into table score;需求:
計算每門學科成績排名。
select name, subject, score, rank() over(partition by subject order by score desc) rp, dense_rank() over(partition by subject order by score desc) drp, row_number() over(partition by subject order by score desc) rmp from score;結果展示:
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
總結
以上是生活随笔為你收集整理的Hive _偏门常用查询函数(三)附带实例(Rank)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: no.3_九球称重
- 下一篇: Hive _函数(系统内置函数、自定义函