2017-02-02 2 views
0

ich aus dieser Quelle gelesen habe, dass Sie einen Einsatz auf dupcliate Schlüssel in Postgres ignorieren tun kann, aber ich kann nicht scheinen dies aus für eine ausgewählte Arbeit zu bekommen:Einsatz von auf doppelten Schlüssel wählen ignorieren Postgres

link

Was ich Sie tun sehen kann, ist:

insert into tab(id, val) values(1, 'nosert'), (2, 
'nosert'), (3, 'nosert') on duplicate key ignore returning id; 

Warum kann ich nicht so etwas tun?

insert into table_one (field_one, field_two) select field_one, field_two from table_two on duplicate key ignore returning field_one; 

ich gesagt, dass ich Syntaxfehler in der Nähe von doppeltem, aber die Abfrage, bevor dann läuft gut (obwohl es auf einem doppelten Index colides) und der Rest der Abfrage kommt noch hinzu, die on duplicate key ignore returning field_one.

Ist dies nicht möglich mit select from?

Antwort

0

War in der Lage mit on conflict do nothing für 9,5

insert into table_one (field_one, field_two) 
select field_one, field_two from table_two 
on conflict do nothing; 
zu lösen
Verwandte Themen