return: text lang: plpgsql src: | DECLARE result TEXT; BEGIN -- Ménage pour tables partiellement générées RAISE NOTICE '%' , 'p_identites'; DELETE FROM pmsi.p_identites WHERE rss_id NOT IN (SELECT oid FROM pmsi.p_rss); -- Ménage dans table des identites (bug #1688) DELETE FROM pmsi.p_identites USING pmsi.p_rss WHERE p_identites.rss_id = p_rss.oid AND p_identites.no_rss <> p_rss.no_rss; RAISE NOTICE '%' , 'p_rss_etat'; DELETE FROM pmsi.p_rss_etat WHERE rss_id NOT IN (SELECT oid FROM pmsi.p_rss); RAISE NOTICE '%' , 'p_rss_rum'; DELETE FROM pmsi.p_rss_rum WHERE rss_id NOT IN (SELECT oid FROM pmsi.p_rss); RAISE NOTICE '%' , 'p_rss_diagnostics'; DELETE FROM pmsi.p_rss_diagnostics WHERE rss_id NOT IN (SELECT oid FROM pmsi.p_rss); RAISE NOTICE '%' , 'p_rss_actes'; DELETE FROM pmsi.p_rss_actes WHERE rss_id NOT IN (SELECT oid FROM pmsi.p_rss); RAISE NOTICE '%' , 'p_rss_lpp'; DELETE FROM pmsi.p_rss_lpp WHERE rss_id NOT IN (SELECT oid FROM pmsi.p_rss); RAISE NOTICE '%' , 'p_rss_ucd'; DELETE FROM pmsi.p_rss_ucd WHERE rss_id NOT IN (SELECT oid FROM pmsi.p_rss); RAISE NOTICE '%' , 'p_rsf_total'; DELETE FROM pmsi.p_rsf_total WHERE rss_id NOT IN (SELECT oid FROM pmsi.p_rss); RAISE NOTICE '%' , 'p_rsf_detail'; DELETE FROM pmsi.p_rsf_detail WHERE rss_id NOT IN (SELECT oid FROM pmsi.p_rss); RAISE NOTICE '%' , 'p_rss_transferts'; DELETE FROM pmsi.p_rss_transferts WHERE NOT EXISTS ( SELECT 1 FROM pmsi.p_rss WHERE p_rss.oid = p_rss_transferts.rss_id ) ; RETURN 'OK'; END;