Session.delete(...) useful if you already have a link to the object you want to delete.
delete-by-query is useful for deleting multiple objects according to certain criteria, objects that you may not have previously uploaded to the session.
I believe that deletion by request actually loads each object into the session and deletes them individually - someone will correct me if I am mistaken in this.
source
share