有一个带有 id 和数据的表 t1。有一个表 t2,其中包含 id、t1_id 和数据。有一个带有 t1_id c 数据的表 t3。
我需要提出以下要求:
with new_t1 as (
insert into t1 (data) values ('test data') returnning id
)
insert into t2 (t1_id, data) values (select id from new_t1, 'Test data 1'), (select id from new_t1, 'Test data 2');
insrt into t3 (t1_id) values (--- Как мне получить здесь t1.id из первого insert?)
让我解释一下它是什么。我需要创建一个 .sql 文件,通过 t1.id 将数据放入 3 个相关表中。使用 with ,我可以插入两个表,但是如何在第三个查询中获取 t1.id ?
一个请求中可以有多个 CTE 相互引用。