Le righe non vengono modificate immediatamente, le modifiche vengono apportate riga per riga e dopo ogni modifica viene richiamato il trigger.
Quando viene invocato, seleziona dalla stessa tabella che è semi-cambiata. Questo è incoerente, quindi - Oracle ti impedisce di farlo.
Probabilmente puoi cambiarlo in FOR EACH STATEMENT
ed elabora il gruppo di righe come desideri, o addirittura ripensa all'attività (c'è la possibilità che tu la stia risolvendo male)