几个hvie常用函数

编程

几个hvie常用函数

cast

cast(value as type)

# 将int类型的id转化为了String类型

cast(id as string)

cast将某个列的值显示的转化为某个类型,一般大类型转换为小类型才需要强制,因为是有数据溢出风险的。

concat

concat(string s1, string s2, string s3,...)

# 输出1-2

concat(1,"-",2)

concat和MySQL的concat函数一样,就是连接字符串,相当于Java的+

concat_ws

concat_ws(seperator, string s1, string s2,...)

concat_ws和MySQL的concat_ws函数一样,使用指定分隔符将多个字符串连接起来

collect_set

collect_set需和分组(group by)结合使用

collect_set把分组之后的数据,按分组做为可以,分组之后的值拼接为一个集合

例如有表idname:

id name

1 a

2 a

1 b

sql:

select id,collect_set(name) as cname from table_name group by id;

结果:

id  cname

1 [a,b]

2 [a]

collect_set和concat_ws一起使用,可以实现MySQL的group_concat功能:

select id,group_concat(name) as cname from idname group by id;

等价于hive:

select id,concat_ws(",",collect_set(name)) as cname from idname group by id;

collect_list

collect_list和collect_set基本相同,不过从名字也可以猜出一点不同来,那就是:

collect_set会对分组之后的值去重,而collect_list不会。

以上是 几个hvie常用函数 的全部内容, 来源链接: utcz.com/z/511591.html

回到顶部