Как выполнить UPDATE записи после INSERT по Id который возвращает INSERT. PostgreSQL

Необходимо проапдейтить поле в записи, которую только заинсертил, одним запросом. Пробовал такой вариант:

    WITH inserted AS (INSERT INTO table (name, age) VALUES ('user', 18) RETURNING id)
    UPDATE table
    SET user = (SELECT id FROM inserted) || 'user'
    WHERE id = (SELECT id FROM inserted)
    RETURNING id

Инсерт отрабатывает, запись добавляется, а апдейт не выполняется как будто id не возвращается. Пробовал SELECT вместо UPDATE, id возвращается.


Ответы (1 шт):

Автор решения: A ZAV

решил вопрос таким образом:

    WITH ids AS (SELECT nextval('id_seq') AS id )
    INSERT table (id, name, age, user)
    VALUES ((select id from ids),'user', 18, (select id from ids)||'user')
→ Ссылка