我有一个 MERGE 场景ARRAY_AGG()
主脚本中的函数。一旦我有了匹配项,我想组合源表和目标表中的数组,但不想添加现有值。我看过使用ARRAY_CAT()
但它没有返回预期的输出
这是查询:
SELECT
ARRAY_CAT(ARRAY_CONSTRUCT('VALUE 1', 'VALUE 2'), ARRAY_CONSTRUCT('VALUE 1', 'VALUE 3')) arr_col
但这返回:
ARR_COL |
[ "VALUE 1", "VALUE 2", "VALUE 1", "VALUE 3" ] |
我需要的是:
ARR_COL |
[ "VALUE 1", "VALUE 2", "VALUE 3" ] |
除了转换为字符串、使用正则表达式删除重复项然后拆分为数组之外,是否有一种简单的方法可以实现此目的?
Use ARRAY_DISTINCT
after ARRAY_CAT
inline:
SELECT
ARRAY_DISTINCT(ARRAY_CAT(ARRAY_CONSTRUCT('VALUE 1', 'VALUE 2'), ARRAY_CONSTRUCT('VALUE 1', 'VALUE 3'))) as arr_col
returns ["VALUE 1", "VALUE 2", "VALUE 3"]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)