set search_path = ; select droptemporarytable('IN_DELKEYS'); create temporary table IN_DELKEYS (IDKEY INT NOT NULL, IDPRO INT NOT NULL); insert into IN_DELKEYS (IDKEY, IDPRO) select distinct op.IdObj, op.IdPro from ObjPro op where op.IdPro != op.IdObj and op.IdPro not in ( select IdPro from ProDep where IdProMain in (select IdPro from AnaPro ) ) and not exists (select 1 from ObjPro op2 where op2.IdObj = op.IdObj and op2.IdPro = op.IdPro and op2.IdPro in ( select IdPro from ProDep where IdProMain in (select IdPro from AnaPro ) ) ) ; select delkeys_tb_update(0) ; select droptemporarytable('IN_DELKEYS') ;