There's definitely *no* difference between DELETE and DELETE ALL.
A FastPath Delete without transient journal just requires: - a target table without Permanent Journal, Delete Trigger, Join Index - the delete must be the last statement within a transaction and this must be known to the optimizer.
BTET mode, implicit transaction: delete from tab;
BTET mode, explicit transaction: BT; ... delete from tab;ET; -- as multistatement
ANSI mode: delete from tab; COMMIT; -- as multistatement
In our training course we present DELETE v DELETE ALL in the way I have described it. This obviously is incorrect. Can you think where we will have gotten this from? Did there used to be a difference? Is there a difference between BTET and SQL Assistant and DELETE v DELETE ALL?
There is difference between Delete and Delete all, Delete all will truncate the index table, while delete will maintain the index table, also i thought their should be difference in journals, in fact, you can use explain to see what happened during delete and delete all( i have no environment to run it now)