CREATE OR REPLACE FUNCTION modificaSuministro() RETURNS integer AS $$
DECLARE
r RECORD;
vid bigint;
BEGIN
RAISE NOTICE ‘Iniciando proceso…’;

FOR r IN SELECT * FROM ctl_grupo ORDER BY id LOOP
if r.grupo_id notnull THEN
SELECT suministro_id INTO vid FROM ctl_grupo WHERE id = r.grupo_id;
UPDATE ctl_grupo SET suministro_id=vid WHERE id = r.id;
end if;

RAISE NOTICE ‘Verificando proceso de [ % ]…’, vid;
END LOOP;

RAISE NOTICE ‘Finalizado.’;
RETURN 1;
END;
$$ LANGUAGE plpgsql;

SELECT * FROM modificaSuministro();

Anuncios