Вставить выбор на дубликате ключа игнорировать postgres
Я читал из этого источника, что вы можете сделать вставку при игнорировании ключа dupcliate в postgres, но я не могу заставить это работать для выбора из:
Я видел, что вы можете сделать это:
insert into tab(id, val) values(1, 'nosert'), (2,
'nosert'), (3, 'nosert') on duplicate key ignore returning id;
Почему я не могу сделать что-то подобное?
insert into table_one (field_one, field_two) select field_one, field_two from table_two on duplicate key ignore returning field_one;
Мне говорят, что у меня есть синтаксическая ошибка возле дубликата, но запрос до этого выполняется нормально (хотя он сталкивается с дублирующимся индексом), а остальная часть запроса просто добавляет on duplicate key ignore returning field_one
,
Разве это не возможно с select from
?
1 ответ
Удалось решить с on conflict do nothing
для 9,5
insert into table_one (field_one, field_two)
select field_one, field_two from table_two
on conflict do nothing;