Hive常用内部函数

本文详细介绍了Hive中的各种内部函数,包括取随机数、字符串操作、条件判断、正则表达式替换、类型转换、字符串连接、开窗函数、聚合函数、空值处理以及行转列等功能。例如,rand()函数用于生成随机数,split()用于分割字符串,if()和case()用于条件判断,regexp_replace()实现正则替换,cast()进行类型转换,concat()和concat_ws()进行字符串连接,而开窗函数如row_number()、rank()和dense_rank()则在窗口操作中起到关键作用。
摘要由CSDN通过智能技术生成

1.取随机数

rand()可以取到0-1之间的随机数,里面也可以随便设立一个种子,如rand(10),这时无论你输入多少次rand(10)都会到的一个稳定的0-1的随机数序列。

2.分割字符串

这个和java中的分割一样,是split,不过不同的是这里语法为split(str,分隔符),返回的也是一个array数组,同样可以通过数组下标来取值。

3.字符串截取函数

和java中substring用法类似,这里语法是substr(str,start)或substr(str,start)从start下标位置截到尾部。还有substring(str,start,length)或substr(str,start,length)从start下标位置截取length长度。

4.if函数

语法:if(boolean testCondition, T valueTrue, T valueFalseOrNull) 意思是if函数里有三个参数,第一个为判断条件返回boolean类型,第二个参数为boolean为true时返回的值,第三个参数为false时返回的值。

5.case函数

例如:

select
			case c.flag
			when 1 then "100"
			when 2 then "200"
			when 3 then "300"
			when 4 then "400"
			else "others"
			end
			from cw;

和java中case条件判断语句大致相同。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值