U kunt het aantal zoekopdrachten niet verminderen - ze doen allemaal verschillende dingen - maar u kunt het aantal retourvluchten naar de database en het aantal parsen verminderen door het allemaal als een PLSQL-functie in te pakken.
U kunt de gegevens echter niet selecteren nadat u ze hebt verwijderd.....maar denk aan:
CREATE PROCEDURE s_u_d(a)
BEGIN
UPDATE tab_x SET tab_x.avalue=1 WHERE tab_x.another=a;
DELETE FROM tab_y WHERE tab_y.avalue=a;
SELECT *
FROM tab_x
WHERE tab_x.another=a;
END;
NB - u kunt ook meerdere selecties uitvoeren in dezelfde procedure en meerdere, verschillend gevormde resultatensets verwerken, b.v. zie deze pagina