Calculate the intersection elements of the input array across all rows and return a new array.
GROUP_ARRAY_INTERSECT(<expr>)
| Parameter | Description |
|---|---|
<expr> | An expression to calculate intersection, supported type: Array. |
Returns an array containing the intersection results. If there is no valid data in the group, returns an empty array.
-- setup CREATE TABLE group_array_intersect_test ( id INT, c_array_string ARRAY<STRING> ) DISTRIBUTED BY HASH(id) BUCKETS 1 PROPERTIES ("replication_num" = "1"); INSERT INTO group_array_intersect_test VALUES (1, ['a', 'b', 'c', 'd', 'e']), (2, ['a', 'b']), (3, ['a', null]);
select group_array_intersect(c_array_string) from group_array_intersect_test;
+---------------------------------------+ | group_array_intersect(c_array_string) | +---------------------------------------+ | ["a"] | +---------------------------------------+
select group_array_intersect(c_array_string) from group_array_intersect_test where id is null;
+---------------------------------------+ | group_array_intersect(c_array_string) | +---------------------------------------+ | [] | +---------------------------------------+