小编T. *_*ung的帖子

加入变体(数组)雪花中的 ID

我创建了两个表 t1 和 t2,如下所示:

创建表

CREATE TABLE t1(
    id integer AUTOINCREMENT START 1 INCREMENT 1,
    name varchar(10) DEFAULT RANDSTR(10, random()),
    id_array variant,
) 

CREATE TABLE t2(
    id integer AUTOINCREMENT START 1 INCREMENT 1,
    name varchar(10) DEFAULT RANDSTR(10, random())
)
Run Code Online (Sandbox Code Playgroud)

目标

如果记录的 id 存在于 t1 变体数组中,我希望将 t2 连接到 t1。

我尝试过的

我遇到了 ARRAY_CONTAINS 函数,它看起来很完美。但通过以下内容我没有收到任何结果:

SELECT t1.id, t2.name
FROM t1, t2 
WHERE ARRAY_CONTAINS(t1.id_array, array_construct(t2.id))
Run Code Online (Sandbox Code Playgroud)

我如何得到这个?

关于如何实现以下结果有什么建议吗?

t1 record: 
{id: 1, name: 'A-123', ids_array: '["1", "2"]'}

t2 records:
{id: 1, name: 'test'},
{id: 2, …
Run Code Online (Sandbox Code Playgroud)

sql snowflake-schema snowflake-cloud-data-platform

5
推荐指数
1
解决办法
1105
查看次数