hive中case..when和row_number()的使用

一、case..when

将列值进行条件筛选和转换。

select sex,case when sex = 1 then 'man'  
when sex = 2 then 'woman'
when sex = 3 then 'secret'
else 'other' end SEX
from big_data.big_data

结果如下:

hive中case..when和row_number()的使用_第1张图片

将sex列中数据做了相应转换。

二、row_number

row_number() OVER (PARTITION BY COL1 ORDERBY COL2)表示根据COL1分组,在分组内部根据COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(该编号在组内是连续并且唯一的)

select  user uu,id nn,ware hg,row_number() over(partition by user,id 
order by ware)ranking 
from bigdata_data.big_data  where rt = 12131

 

结果如下:

hive中case..when和row_number()的使用_第2张图片

你可能感兴趣的:(数据分析)