我正在嘗試使用從另一個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