view schema/updates/1101/01.improve_del_import.sql @ 5626:0d453a8dc8e7

HG Ignore gmaggregate binary.
author Sascha Wilde <wilde@sha-bang.de>
date Mon, 08 May 2023 18:11:08 +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;