我想在group by子句中使用数组联合。 Hive没有任何通用方法来聚合数组联合。 除了内置的配置单元功能之外,还有其他解决方案。
示例:
CREATE TABLE base_table
(
day string,
sample_data array<string>
)
SELECT day, ARRAY_UNION(sample_data) FROM
(
SELECT day, sample_data from base_table1
UNION ALL
SELECT day, sample_data from base_table2
)
GROUP BY day
答案 0 :(得分:1)
您可以尝试collect_list
或collect_set
SELECT day, COLLECT_LIST(sample_data) FROM
(
SELECT day, sample_data from base_table1
UNION ALL
SELECT day, sample_data from base_table2
)
GROUP BY day