Запрос для вставки данных в таблицу только в некоторые столбцы

Подскажите, в случае если у меня есть таблица из 4 столбцов (допустим, a, b, c, d), причем в столбцах a и b уже есть данные, и я хочу вставить данные только в столбцы c и d, на основе пересечения вставляемых значений в столбце а, как мне это сделать? Мне особо не нравится, как сформулирован вопрос, но по-другому не получается, поэтому я проиллюстрирую: в таблицу такого вида я хочу добавить значение ccc для столбца c и значение ddd для столбца d

a   b   c   d
aaa bbb null null

таким образом должна получиться таблица:

a   b   c   d
aaa bbb ccc ddd

Написал такой запрос, insert into table(a, c, d) values ('aaa', 'ccc', 'ddd') on conflict(a) do update set c='ccc', d='ddd', но postgres ругается на то, что я не указал столбец b, соответственно он туда пытается вставить null, и получает ошибку из-за ограничения на невозможность вставки null в столбец b.


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