Pokud používáte Postgres 9.5 nebo novější (což předpokládám, protože byl vydán v lednu 2016), je zde velmi užitečná ON CONFLICT
klauzule, kterou můžete použít:
INSERT INTO mytable (id, col1, col2)
VALUES (123, 'some_value', 'some_other_value')
ON CONFLICT (id) DO NOTHING