Код: Выделить всё
INSERT INTO table1 (
col1,
col2,
col3
)
VALUES (
%s,
(SELECT id FROM table2 WHERE name = %s),
%s,
)
ON CONFLICT (fk_id)
DO UPDATE SET
col1 = %s,
***col2 = (SELECT id FROM table2 WHERE name = %s),***
col3 = %s
WHERE EXISTS (
SELECT 1 FROM table1 WHERE fk_id = %s
)
RETURNING id;
Спасибо.
Подробнее здесь: https://stackoverflow.com/questions/790 ... sult-value