view schema/updates/1101/01.improve_del_import.sql @ 5361:ce1fe22bda5a extented-report

Backed out changeset f845c3b7b68e
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Tue, 22 Jun 2021 17:12:17 +0200
parents 52f7264265bb
children
line wrap: on
line source

CREATE OR REPLACE FUNCTION import.del_import(imp_id int) RETURNS void AS
$$
DECLARE
    tmp RECORD;
BEGIN
    FOR tmp IN
        SELECT relation, array_agg(key) AS keys
            FROM import.track_imports
            WHERE import_id = imp_id AND NOT deletion
            GROUP BY relation
    LOOP
        EXECUTE format('DELETE FROM %s WHERE id = ANY($1)', tmp.relation)
            USING tmp.keys;
    END LOOP;
END;
$$
LANGUAGE plpgsql;