Det typiska sättet att göra detta i Oracle skulle vara:
DELETE FROM patient
WHERE dis_date < TRUNC(ADD_MONTHS(SYSDATE, -7*12));
Anledningen till att jag föreslår att du använder ADD_MONTHS()
istället för årsintervall är det ADD_MONTHS()
är skottårssäker.