大数据培训_Hive 常用函数
发布时间:
2019-09-17 17:40:36
Hive数据库中内置一些常用的函数,同时hive也支持自定义函数。hive自定义函数,主要是通过java编程实现,因为hive是java所写的。下面主要是介绍一些hive当中的一些常用的函数的使用。通过对函数的学习,有利于对于hive的业务操作。
步骤 1 首先执行环境变量。
> source /home/user01/hadoopClient/bigdata_env
步骤 2 进入 Hive 客户端 beeline。
> /home/user01/hadoopClient/Hive/Beeline/bin/beeline
...
Connected to: Apache Hive (version 1.3.0)
Driver: Hive JDBC (version 1.3.0)
Transaction isolation: TRANSACTION_REPEATABLE_READ
Beeline version 1.3.0 by Apache Hive
0: jdbc:hive2://192.168.225.11:21066/>
步骤 3 字符串函数 length(string A)。
字符串长度函数:length
语法: length(string A)
返回值: int
说明:返回字符串 A 的长度
hive> select length(‘abcedfg’);
7
步骤 4 字符串反转函数 reverse。
语法: reverse(string A)
返回值: string
说明:返回字符串 A 的反转结果
hive> select reverse(‘abcedfg’);
gfdecba
步骤 5 字符串连接函数 concat。
语法: concat(string A, string B…)
返回值: string
说明:返回输入字符串连接后的结果,支持任意个输入字符串
hive> select concat(‘abc’,'def’,'gh’);
abcdefgh
步骤 6 带分隔符字符串连接函数 concat_ws。
语法: concat_ws(string SEP, string A, string B…)
返回值: string
说明:返回输入字符串连接后的结果,SEP 表示各个字符串间的分隔符
hive> select concat_ws(‘-’,'abc’,'def’,'gh’);
abc-def-gh
步骤 7 字符串截取函数 substr,substring。
语法: substr(string A, int start, int len),substring(string A, int start, int len)
返回值: string
说明:返回字符串 A 从 start 位置开始,长度为 len 的字符串
hive> select substr('abcde',3,2);
cd
hive>select substr ('abcde',-2,2);
de
步骤 8 字符串转大写函数 upper,ucase。
语法: upper(string A) ucase(string A)
返回值: string
说明:返回字符串 A 的大写格式
hive> select upper(‘abC’);
ABC
hive> select ucase(‘abC’);
ABC
步骤 9 字符串转小写函数 lower,lcase。
语法: lower(string A) lcase(string A)
返回值: string
说明:返回字符串 A 的小写格式
hive> select lower(‘abC’);
abc
hive> select lcase(‘abC’);
abc
步骤 10 去空格函数 trim。
语法: trim(string A)
返回值: string
说明:去除字符串两边的空格
hive> select trim(‘ abc ‘);
abc
步骤 11 分割字符串函数 split。
语法: split(string str, string pat)
返回值: array
说明: 按照 pat 字符串分割 str,会返回分割后的字符串数组
hive> select split(‘abtcdtef’,'t’);
["ab","cd","ef"]
步骤 12 日期函数。
获取当前 UNIX 时间戳函数: unix_timestamp
语法: unix_timestamp()
返回值: bigint
说明: 获得当前时区的 UNIX 时间戳。
hive> select unix_timestamp() from dual;
1521511607
UNIX 时间戳转日期函数: from_unixtime
语法:from_unixtime(bigint unixtime[, string format])
返回值: string
说明: 转化 UNIX 时间戳(从 1970-01-01 00:00:00 UTC 到指定时间的秒数)到当前时区的时间
格式。
hive> select from_unixtime(1521511607,'yyyyMMdd');
20180320
上一篇:
大数据培训_Flume海量日志采集快速入门
下一篇:
Python培训_Python奖金管理案例