背景:在 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;
请教一下各位大佬有没有好的写法能够实现该功能呢?万分感谢~
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.