我创建了两个表 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)