我正在尝试使用从另一个INSERT
获取的自动增量值的INSERT
某些行。使用与WITH绑定的值插入数据
WITH id AS (
INSERT INTO myTable
(mt_name, mt_description)
VALUES ('Name', 'Description')
RETURNING id
)
INSERT INTO anotherTable
(at_id, at_foo, at_bar)
VALUES (id, 'PLT', 50682),
(id, 'PLT', 54482),
(id, 'PLT', 52570),
(id, 'PLT', 9192);
我很期待是INSERT
一堆与at_id
列行具有由第一INSERT
返回的值。但是当我运行这个时,我得到:
psql:file.txt:100: ERROR: column "id" does not exist
LINE 9: VALUES (id, 'PLT', 50682),
是否可以通过这种方式插入返回值?如果是这样,我必须做出什么样的改变才能使其发挥作用?
我使用的是Postgres 9.3.5。客户端和服务器具有相同的版本。
并没有真正扩展到插入多个值,虽然,这是至关重要的位置。 – Kat 2014-10-28 05:10:07