sql >> Databáze >  >> RDS >> PostgreSQL

Zkontrolujte, zda existují záznamy v tabulce Postgres

To by mělo fungovat dobře:

CREATE TEMP TABLE tmp AS SELECT * FROM tbl LIMIT 0 -- copy layout, but no data

COPY tmp FROM '/absolute/path/to/file' FORMAT csv;

INSERT INTO tbl
SELECT tmp.*
FROM   tmp
LEFT   JOIN tbl USING (tbl_id)
WHERE  tbl.tbl_id IS NULL;

DROP TABLE tmp; -- else dropped at end of session automatically

Úzce souvisí s touto odpovědí .



  1. Jak zakázat všechny optimalizace PostgreSQL

  2. Galera Cluster Recovery 101 – Hluboký ponor do dělení sítě

  3. golang gorm Přístup k základnímu dotazu mysql

  4. Zkontrolujte, zda se shodují 3 nebo více v řádku DB