HIVE的函数目录

一、关系运算

  • 等值比较: =
  • 等值比较:<=>
  • 不等值比较: <>和!=
  • 小于比较: <
  • 小于等于比较: <=
  • 大于比较: >
  • 大于等于比较: >=
  • 区间比较
  • 空值判断: IS NULL
  • 非空判断: IS NOT NULL
  • LIKE比较: LIKE
  • JAVA的LIKE操作: RLIKE
  • REGEXP操作: REGEXP

二、数学运算:

  • List item
  • 加法操作: +
  • 减法操作: –
  • 乘法操作: *
  • 除法操作: /
  • 取余操作: %
  • 位与操作: &
  • 位或操作: |
  • 位异或操作: ^
  • 位取反操作: ~

三、逻辑运算:

  • 逻辑与操作: AND 、&&
  • 逻辑或操作: OR 、||
  • 逻辑非操作: NOT、!

四、复合类型构造函数

  • map结构
  • struct结构
  • named_struct结构
  • array结构
  • create_union

五、复合类型操作符

  • 获取array中的元素
  • 获取map中的元素
  • 获取struct中的元素

六、数值计算函数

  • 取整函数: round
  • 指定精度取整函数: round
  • 向下取整函数: floor
  • 向上取整函数: ceil
  • 向上取整函数: ceiling
  • 取随机数函数: rand
  • 自然指数函数: exp
  • 以10为底对数函数: log10
  • 以2为底对数函数: log2
  • 对数函数: log
  • 幂运算函数: pow
  • 幂运算函数: power
  • 开平方函数: sqrt
  • 二进制函数: bin
  • 十六进制函数: hex
  • 反转十六进制函数: unhex
  • 进制转换函数: conv
  • 绝对值函数: abs
  • 正取余函数: pmod
  • 正弦函数: sin
  • 反正弦函数: asin
  • 余弦函数: cos
  • 反余弦函数: acos
  • positive函数: positive
  • negative函数: negative

七、集合操作函数

  • map类型大小:size
  • array类型大小:size
  • 判断元素数组是否包含元素:array_contains
  • 获取map中所有value集合
  • 获取map中所有key集合
  • 数组排序

八、类型转换函数

  • 二进制转换:binary
  • 基础类型之间强制转换:cast

九、日期函数

  • UNIX时间戳转日期函数: from_unixtime
  • 获取当前UNIX时间戳函数: unix_timestamp
  • 日期转UNIX时间戳函数: unix_timestamp
  • 指定格式日期转UNIX时间戳函数: unix_timestamp
  • 日期时间转日期函数: to_date
  • 日期转年函数: year
  • 日期转月函数: month
  • 日期转天函数: day
  • 日期转小时函数: hour
  • 日期转分钟函数: minute
  • 日期转秒函数: second
  • 日期转周函数: weekofyear
  • 日期比较函数: datediff
  • 日期增加函数: date_add
  • 日期减少函数: date_sub

十、条件函数

  • If函数: if
  • 非空查找函数: COALESCE
  • 条件判断函数:CASE
  • 条件判断函数:CASE

十一、字符串函数

  • 字符ascii码函数:ascii
  • base64字符串
  • 字符串连接函数:concat
  • 带分隔符字符串连接函数:concat_ws
  • 数组转换成字符串的函数:concat_ws
  • 小数位格式化成字符串函数:format_number
  • 字符串截取函数:substr,substring
  • 字符串截取函数:substr,substring
  • 字符串查找函数:instr
  • 字符串长度函数:length
  • 字符串查找函数:locate
  • 字符串格式化函数:printf
  • 字符串转换成map函数:str_to_map
  • base64解码函数:unbase64(string str)
  • 字符串转大写函数:upper,ucase
  • 字符串转小写函数:lower,lcase
  • 去空格函数:trim
  • 左边去空格函数:ltrim
  • 右边去空格函数:rtrim
  • 正则表达式替换函数:regexp_replace
  • 正则表达式解析函数:regexp_extract
  • URL解析函数:parse_url
  • json解析函数:get_json_object
  • 空格字符串函数:space
  • 重复字符串函数:repeat
  • 左补足函数:lpad
  • 右补足函数:rpad
  • 分割字符串函数: split
  • 集合查找函数: find_in_set
  • 分词函数:sentences
  • 分词后统计一起出现频次最高的TOP-K
  • 分词后统计与指定单词一起出现频次最高的TOP-K

十二、混合函数

  • 调用Java函数:java_method
  • 调用Java函数:reflect
  • 字符串的hash值:hash

十三、XPath解析XML函数

  • xpath
  • xpath_string
  • xpath_boolean
  • xpath_short, xpath_int, xpath_long
  • xpath_float, xpath_double, xpath_number

十四、汇总统计函数(UDAF)

  • 个数统计函数: count
  • 总和统计函数: sum
  • 平均值统计函数: avg
  • 最小值统计函数: min
  • 最大值统计函数: max
  • 非空集合总体变量函数: var_pop
  • 非空集合样本变量函数: var_samp
  • 总体标准偏离函数: stddev_pop
  • 样本标准偏离函数: stddev_samp
  • 中位数函数: percentile
  • 近似中位数函数: percentile_approx
  • 近似中位数函数: percentile_approx
  • 直方图: histogram_numeric
  • 集合去重数:collect_set
  • 集合不去重函数:collect_list

十五、表格生成函数Table-Generating Functions (UDTF)

  • 数组拆分成多行:explode
  • Map拆分成多行:explode