温馨提示×

hive数组如何进行元素统计

小樊
85
2024-12-20 17:47:02
栏目: 大数据
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Hive中,可以使用explode函数将数组类型的列拆分成单个元素,然后使用count函数统计每个元素的出现次数

-- 假设有一个名为my_table的表,其中有一个名为my_array的数组类型列
CREATE TABLE my_table (
    id INT,
    my_array ARRAY<STRING>
);

-- 向表中插入一些示例数据
INSERT INTO my_table (id, my_array)
VALUES (1, ARRAY("apple", "banana", "apple")),
       (2, ARRAY("orange", "banana")),
       (3, ARRAY("apple", "grape", "apple", "orange"));

-- 使用explode函数将my_array列拆分成单个元素,并使用count函数统计每个元素的出现次数
SELECT my_array, COUNT(*) as count
FROM my_table
LATERAL VIEW INLINE(my_array) inline_table as element
GROUP BY my_array, element;

这个查询将返回一个结果集,其中包含原始数组列中的每个唯一元素及其在数组中出现的次数。在这个例子中,输出将是:

my_array  count
-----------------
[apple]    3
[banana]   2
[orange]   2
[grape]    1

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:hive数组如何进行元素反转

0