>> Поскольку INSERT - SELECT работает то возникает соблазн написать >> INSERT INTO table2 (table1_id, name) >> INSERT INTO table1 (a, b) VALUES (1, 2) RETURNING "id", '123' AS "name" >> >> Но такая запись не работает. Говорит что синтаксическая ошибка на >
> RETURNING ... не тоже самое, что SELECT ..., поэтому так > делать нельзя. Добиться желаемого эффекта можно > поместив INSERT ... RETURNING в функцию, возвращающую > требуемый набор столбцов (или композитный тип).
Если 9.1, то для этого ещё можно использовать WITH с DML
Чтобы сделать работу с сайтом удобнее, мы используем cookie и аналитический сервис «Яндекс.Метрика». Продолжая пользоваться сайтом, вы соглашаетесь с их использованием.