Hive内置函数

Hive内置函数

  • 查询内置函数用法:
DESCRIBE FUNCTION EXTENDED 函数名;

字符串函数

  • 字符串连接函数:concat
  • 带分隔符字符串连接函数:concat_ws
  • 字符串截取函数:substr或substring
  • 正则表达式替代函数:regexp_replace
  • 正则表达式解析函数:regexp_extract
  • URL解析函数:parse_url
  • json解析函数:get_json_object
  • 分割字符串函数:split(可以用正则表达式匹配)

时间类型函数

  • 获取当前日期:current_date
  • 获取当前UNIX时间戳:current_timestamp
  • 日期转UNIX时间戳:unix_timestamp
  • UNIX时间戳转日期:from_unixtime
  • 日期比较:datediff
  • 增加日期:date_add
  • 减少日期:date_sub
  • 抽取日期:to_date
  • 日期提取年:year(其他级别日期提取方法相同)

数学函数

  • 取整:round
  • 向下取整:floor
  • 向上取整:ceil
  • 取随机数:rand
  • 取二进制数:bin
  • 取绝对值:abs

集合函数

  • 计算集合大小:size
  • 取集合的keys:map_keys
  • 取集合values:map_vaclues
  • 判断数组是否包含指定元素:array_contains
  • 数组排序:sort_array

条件函数

  • 条件判断:if
  • 空判断:isnull
  • 非空判断:isnotnull
  • 空值转换:nvl
  • 非空查找:COALESCE
  • 条件转换函数:CASE a WHEN b THEN c [ELSE d] END
  • 若相等则返回空,不等返回第一个:nullif(a,b)
  • 如果condition不为真,则异常,否则返回null:assert_true(condition)

类型转换函数

  • 任意数据类型之间的转换:cast

数据脱敏函数

  • 将查询返回的数据,大写字母转换为X,小写字母转换为x,数字转换为n:mask(也可以自定义替换的字母)
  • 对前n个进行脱敏替换:mask_first_n
  • 对后n个进行脱敏替换:mask_last_n
  • 除了前n个字符,其余进行掩码处理:mask_show_first_n
  • 除了后n个字符,其余进行掩码处理:mask_show_last_n
  • 返回字符串的hash编码:mask_hash

其他函数

  • 调用java方法:java_method(如果jar包不是hive自带的,可以用add jar添加进来)
  • 反射函数:reflect
  • 取哈希值:hash
  • SHA-2家族算法加密:sha2
  • crc32加密:crc32
  • MD5加密:md5

用户自定义函数

  • 用户自定义函数简称UDF
  • 根据函数输入输出行数可以分为3类:
  1. UDF:普通函数,一进一出(round)
  2. UDAF:聚合函数,多进一出(sum)
  3. UDTF:表生成函数,一进多出(explode)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值