背景:在 hologres 中有多条记录分组汇总,其中有一个数组字段( eg:positions )
请问我可以使用什么函数,或者怎么样实现数组合并去重返回呢?
尝试问过 gpt ,gpt 给出的答案为:
SELECT staff_id, array_distinct(array_agg(positions)) AS merged_positions FROM staff_positions GROUP BY staff_id;
但是 holo 并不支持 array_distinct 函数。
自己也写过 sql ,虽然能实现,但是性能很差:
SELECT staff_id, array_agg(DISTINCT element) AS result FROM ( SELECT staff_id, unnest(positions) AS element FROM staff_positions
) AS subquery GROUP BY staff_id;
请教一下各位大佬有没有好的写法能够实现该功能呢?万分感谢~
