show functions;
desc function extended upper;
current row #當前行
n preceding #向前取第n行
n following #向後取第n行
unbounded preceding #首行
unbounded following #尾行
order by asc/desc #排序
partition by #分組
lag(now_row,n,defaul_value) #now向前取第n行
lead(now_row,n,default_value) #now向後取第n行
ntile(n) #資料均勻分組
percent_rank() #顯示目前資料量佔比情況
rank() #名次相同會重複,總數不變
dense_rank() #名次相同會重複,總數減少
row_number() #名次相同時根據原表名次排名
current_data() #當前日期
data_add(start_date,num_days) #計算幾天後的日期
data_sub(start_date,num_days) #計算幾天前的日期
date_diff(date_1,date_2) #計算時間天數差
Hive 開窗函式
普通聚合函式聚合的行集是組,開窗函式聚合的行集是視窗。因此,普通聚合函式每組 group by 只有乙個返回值,而開窗函式則可以為視窗中的每行都返回乙個值。分析函式 如 sum max row number 視窗子句 over函式 over partition by column n order b...
hive開窗函式總結
1,sum 函式 注 沒有order by,不僅分區內沒有排序,sum 計算的pv也是整個分割槽的pv。max 函式無論有沒有order by 都是計算整個分割槽的最大值 2,ntile 函式 ntile n 用於將分組資料按照順序切分成n片,返回當前切片值 注 如果切片不均勻,預設增加第乙個切片的...
Hive 開窗函式 cume dist
題目 獲取每個班級中,以數學成績排序,取後20 成績從低到高 的學生資訊 1 準備工作 資料 studentid,classid course,score 001,001,math,15 001,002,math,20 001,003,math,35 001,004,math,40 001,005,...