【发布时间】:2019-10-30 22:42:21
【问题描述】:
查看 Snowflake 文档后,我找到了名为 array_intersection(array_1, array_2) 的函数,它将返回两个数组之间的公共值,但我需要显示数组中的任何一个数组中都不存在的值。
示例 1:
假设我的表中有以下两个数组
array_1 = ['a', 'b', 'c', 'd', 'e']
array_2 = ['a', 'f', 'c', 'g', 'e']
我的查询:
select
array_intersection(array_1, array_2)
from myTable
电流输出:
['a', 'c', 'e']
但我期望输出为:
['f', 'g']
示例 2:
假设我的表中有以下两个数组
array_1 = ['u', 'v', 'w', 'x', 'y']
array_2 = ['u', 'v', 'i', 'x', 'k']
我的查询:
select
array_intersection(array_1, array_2)
from myTable
电流输出:
['u', 'v', 'x']
但我期望输出为:
['w', 'y', 'i', 'k']
如何在 Snowflake 中做到这一点?有什么建议吗?
【问题讨论】:
-
根据您预期的上述输出语句,您似乎希望第二个数组中的值不在第一个数组中?不过,我不认为这是你在介绍中所说的。你能澄清一下想要的结果吗?
-
@MikeWalton 我的意思是,我想要包含两个数组中都不存在的所有值的最终数组。如果您仍然没有得到它,请告诉我,我可以在这里举个例子。
标签: snowflake-cloud-data-platform