Hive内置函数全解析:数学、字符串、日期、条件、转换及行转列技巧

创始人
2025-01-10 01:08:10
0 次浏览
0 评论

2021年大数据Hive(五):Hive的内置函数(数学、字符串、日期、条件、转换、行转列)

Hive函数主要分为三类:聚合函数、内置函数和建表函数。
本文重点研究内置函数,包括数学、字符串、日期运算、条件判断和数据转换等函数,以及行转换为列的实用技术。

###数学函数

1.**舍入功能**:圆形、地板和天花板。

round(doublea):返回double类型的整数值部分(四舍五入后)。
Floor(double):返回等于或小于Double变量的最大整数。
ceil(doublea):返回等于或大于Double变量的最小整数。

示例:执行“round(3.1415926)”后,结果为3。

2.**随机数函数**:rand。

返回0到1范围内的随机数,可选地带有种子参数以确保可重复性。

示例:运行rand()两次可能会产生不同的结果。

3.**电源操作功能**:pow。

返回幂p。

示例:执行pow(2,4)后结果为16.0。

4.**绝对值函数**:abs。

返回值a的绝对值。

示例:执行abs(-3.9)后结果为3.9。

###字符串函数

1.**长度函数**:长度。

返回字符串的长度。

示例:执行length('abcedfg')后的结果是7。

2.**反转功能**:反转。

返回字符串的反转结果。

示例:执行reverse("abcedfg")后的结果是gfdecba。

3.**连接函数**:concat。

返回连接输入字符串的结果。

示例:执行concat('hello','world')后的结果是helloworld。

4.**断开连接函数**:concat_ws。

返回连接输入字符串的结果。
SEP表示每个字符串之间的分隔符

示例:执行concat_ws(',','abc','def','gh')后结果为abc,def,gh。

5.**截取**:substr,子串。

返回字符串从起始位置到字符串结尾的位置。
返回从起始位置开始且长度为len的字符串。

示例:执行substr('abcde',3)后的结果是cde。

###日期函数

1.**获取当前UNIX时间戳**:unix_timestamp。

获取当前时区的UNIX时间戳。

示例:执行unix_timestamp()后的结果是当前的UNIX时间戳。

2.**迄今为止的UNIX时间戳**:from_unixtime。

将UNIX时间戳(从1970-01-0100:00:00UTC到指定时间的秒数)转换为当前时区的时间格式。

示例:执行from_unixtime(1598079966,'yyyy-MM-ddHH:mm:ss')后的结果为2020-08-2215:06:06。

###条件函数

1.**如果函数**。

如果条件为TRUE,则返回valueTrue,否则返回valueFalseOrNull。

示例:执行if(1=2,100,200)后结果为200。

2.**案例功能**。

如果a等于b,则返回c;如果a等于d,则返回e;否则返回f。

示例:执行case100when50then'tom'when100then'mary'else'tim'end后的结果是mary。

###转换函数

使用转换函数可以转换数据类型,例如:B.将“String”类型的数据转换为“Integer”或“Date”类型。

###插入Column

使用concat_ws、collect_set等函数将多行数据转换为字段列。

以上功能可以实现复杂的数据处理和转换,提高数据分析的效率和准确性。

hive中的SUBSTRING()函数学习

在Hive的数据处理中,SUBSTRING()函数发挥着重要作用,有助于从字符串中提取所需的部分。
这个功能对于Hive新手和老手来说都非常有用。
了解有关其用法、语法和示例的更多信息。
SUBSTRING()函数的核心功能是根据指定的起始位置和长度截取字符串。
其基本语法为:SUBSTRING(input_string,start_position,length)现在我们通过一些例子来直观地体验一下SUBSTRING()的用法:1.String"Hello,World!"想要获取以下值:"World""对于这部分,执行:SUBSTRING("Hello,World!",7,5)这将返回“World”。
2.对于字符串“Hiveispowerful”:从第5个字符中提取6个字符:SUBSTRING("Hiveispowerful",5,6)这将得到“iveis”。
使用SUBSTRING()时需要记住一些事项。
-起始位置从1开始计算,而不是从0开始计算。
-如果长度参数超过字符串的长度,则函数将截断到字符串的末尾。
-如果起始位置大于字符串长度,则结果为空字符串。
通过上面的内容,你应该已经了解了Hive的SUBSTRING()函数的基本用法。
在实际项目中,您可以通过不断练习和理解此功能来提高Hive查询的效率。
热门文章
1
c语言有三维数组吗 C语言三维数组初始化详细方法和步骤如下:1第一步,需要定义一个数组。常见的数组类...

2
js字符串包含某个字符串的个数 js问题:求字符串中某个字符出现的个数的方法?看看是否满足你的需求(x);}pu...

3
轻松调整SQL Server 2008表... sql2008表格怎么只能编辑前两200行200线是默认设置,并且仅在号码开通时...

4
C语言基础解析:从Hello World... C语言的基本要素有哪些?基本的C语言格式可以参考基本的helloworld程序。...

5
Python排列组合与循环运用技巧解析 怎样使用Python进行排列组合?对于这类问题,我们可以使用分割循环来执行转换和...

6
C语言for循环技巧:非C字符位置记录与... C语言for循环问题求解.在for中,我记录了要写入的非c字符的位置。仅当字符不...

7
Hive内置函数全解析:数学、字符串、日... 2021年大数据Hive(五):Hive的内置函数(数学、字符串、日期、条件、转...

8
Python随机数生成技巧:轻松输出任意... python通过键盘输入随机数种子,产生50个[0,100]之间的随机正整数,然...

9
C语言实现字符串倒序输出教程 请教C语言字符串倒序输出#include#includevoidmain(){c...

10
C语言一元二次方程解答器实现与优化 这个c语言程序哪里有问题,我想写一个一元二次方程解答器。#include#inc...