Hive内置集合函数-size,map_keys,map_values,sort_array,array_contains

1. Hive内置Collection Functions

以下函数为Hive是提供的内置集合函数:

返回类型 函数(签名) 函数说明
int size(Map<K.V>) Returns the number of elements in the map type.
int size(Array) Returns the number of elements in the array type.
array map_keys(Map<K.V>) Returns an unordered array containing the keys of the input map.
array map_values(Map<K.V>) Returns an unordered array containing the values of the input map.
boolean array_contains(Array, value) Returns TRUE if the array contains value.
array sort_array(Array) Sorts the input array in ascending order according to the natural ordering of the array elements and returns it (as of version 0.9.0).

2. 测试Collection Functions

sql 复制代码
with tmp_map_data as (
    select map(
                   "k2", "v2", 
                   "k1", "v1", 
                   "k3", "v3"
           ) as m
    )
select
    size(m),								-- 3
    map_keys(m),							-- ["k1","k2","k3"]
    map_values(m),							-- ["v2","v1","v3"]
    sort_array(map_keys(m)),				-- ["k1","k2","k3"]
    array_contains(map_keys(m), 'k3'),		-- true
    array_contains(map_keys(m), 'k4')		-- false
from tmp_map_data;

3. 说明

Hive提供的内置集合函数, 在做一些集合内统计/查找/分析等场景下非常方便, 熟练使用, 可以极大的简化这类场景的开发.

参考文献:

相关推荐
橘子编程17 小时前
Hive大数据实战指南:从入门到精通
大数据·hive·hadoop
仗剑_走天涯18 小时前
hadoop 执行mr任务出现找不到主类或无法加载主类解决方案
hadoop·mr
橘子编程1 天前
Apache Hadoop知识全解析
大数据·hive·hadoop·apache
dovens1 天前
Spring Boot 从 2.7.x 升级到 3.3注意事项
数据库·hive·spring boot
顧棟1 天前
HDFS2.X升级3.X案例与相关Issue
大数据·hadoop·hdfs
小跘an吻纸2 天前
linux系统搭建hadoop环境
linux·运维·hadoop
源码之家2 天前
计算机毕业设计:Python汽车销量智能分析与预测系统 Flask框架 scikit-learn 可视化 requests爬虫 AI 大模型(建议收藏)✅
人工智能·hadoop·python·算法·数据分析·flask·课程设计
QEasyCloud20222 天前
企业数据仓库建设的技术架构与实施方法论
数据仓库·架构
极光代码工作室2 天前
基于Spark的用户行为分析系统设计
大数据·hadoop·python·数据分析·数据可视化
chunyublog2 天前
HBase 2.4.18 分布式集群搭建教程(适配 Hadoop 3.3.4 + ZooKeeper 3.5.6)
hadoop·分布式·hbase