Zrobienie tego raz mogłoby wyglądać tak:
CREATE TEMP TABLE tmp_x (nr int);
COPY tmp_x FROM '/absolute/path/to/file';
DELETE FROM mytable d
USING tmp_x
WHERE d.mycol = tmp_x.nr;
DROP TABLE tmp_x;
Do wielokrotnego użytku, zapakuj go w funkcję plpgsql
ze ścieżką do pliku / nazwą tabeli / nazwą kolumny jako parametrami. Jeśli nazwa tabeli lub kolumny jest dynamiczna, musisz użyć WYKONAJ
dla DELETE
.