1.UDF函数
1.1 UDF函数:单行输入,单行输出
作用于单个数据行,并且产生一个数据行作为输出。大多数函数都属于这一类
1.2 UDAF函数:多行输入,单行输出
接受多个输入数据行,并产生一个输出数据行。像COUNT和MAX这样的函数就是聚集函数。
1.3 UDTF函数:单行输入,多行输出
操作作用于单个数据行,并且产生多个数据行-------一个表作为输出。
1.4 创建UDF函数
时间函数
Hive 处理 13 位时间戳,得到年月日时分秒(北京时间)
select from_utc_timestamp(1682238448915, 'GMT+8');
-- 结果:2023-04-23 16:27:28.915000000,包含毫秒了
select from_unixtime(cast(1682238448915 / 1000 as bigint), 'yyyy-MM-dd HH:mm:ss');
-- 结果:2023-04-23 08:27:28,差了8小时
select from_unixtime(cast(substring(1682238448915, 1, 10) as bigint), 'yyyy-MM-dd HH:mm:ss');
-- 结果:2023-04-23 08:27:28,差了8小时
select date_format(from_utc_timestamp(1682238448915, 'GMT+8'), 'yyyy-MM-dd HH:mm:ss');
// 结果:2023-04-23 16:27:28,就是想要的结果