我找到了一个简单的解决方案,用于克隆具有自动增量ID的记录,该方法不需要您指定表的任何其他列:
BEGIN;CREATE TEMP TABLE table1_temp ON COMMIT DROp AS SELECT * FROM table1 WHERe id = #;UPDATe table1_temp SET id = nextval('table1_seq');INSERT INTO table1 TABLE table1_temp;COMMIT;对于问题的CTE部分,这是如何通过串联WITH语句在多个后续查询中重用返回的值:
WITH generated_id AS ( INSERT INTO ... RETURNING id), _ AS ( QUERY1 ... SELECT id FROM generated_id ...), __ AS ( QUERY2 ... SELECt id FROM generated_id ......



