sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Cómo se actualiza Postgresql COPY TO STDIN con CSV en conflicto?

En esta publicación SO, hay dos respuestas que, combinadas, brindan una buena solución para usar con éxito ON CONFLICT . El siguiente ejemplo utiliza ON CONFLICT DO NOTHING; :

CREATE TEMP TABLE tmp_table 
(LIKE label INCLUDING DEFAULTS)
ON COMMIT DROP;

COPY tmp_table FROM 'full/file/name/here';

INSERT INTO main_table
SELECT *
FROM tmp_table
ON CONFLICT DO NOTHING;