HIVE中視窗函式 分組排序

2021-10-05 07:52:03 字數 534 閱讀 9122

hive

**row_number() over()**直接排序,10個第1名排名為1到10

select user_id,pay_time,amont,row_number() over (partition by user_id order by amont desc ) rank from tmp

**rank() over()**是跳躍排序,有兩個第二名時接下來就是第四名

select workdept,salary,rank() over(partition by workdept order by salary) as dense_rank_order from emp order by workdept;

**dense_rank() over()**是連續排序,有兩個第二名時仍然跟著第三名

select workdept,salary,dense_rank() over(partition by workdept order by salary) as dense_rank_order from emp order by workdept;

Python 列表排序,sort函式,分組排序

在python中對列表的排序有乙個內建的方法 sort list1 9,8,7,6,5 list1.sort print list1 5,6,7,8,9 注意 sort 是乙個內建的list.sort 方法,可以直接改變列表的內容.公升序降序 sort 是可以接受乙個reverse引數,這個引數是乙...

hive中的排序和分組

order by order by 會對輸入坐全域性排序,因此 只有乙個reducer 多個reducer會無法保證全域性有序 只有乙個reducer,會導致當輸入規模較大時,需要較長的計算時間.set hive.mapred.mode nonstrict default value 預設值 set...

hive 分組排序,topN

hive 分組排序,topn 語法格式 row number over partition by col1 order by col2 desc rank partition by 類似hive的建表,分割槽的意思 order by 排序,預設是公升序,加desc降序 rank 表示別名 表示根據c...