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
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提供的内置集合函数, 在做一些集合内统计/查找/分析等场景下非常方便, 熟练使用, 可以极大的简化这类场景的开发.
参考文献:
原文地址:https://blog.csdn.net/liuwei0376/article/details/142371991
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!