If a WHERE clause is not supplied, DELETE removes all the rows from the table.
If a search condition is specified, it is applied to each row of the table. All rows for which the result of the search condition is TRUE are marked for deletion.
The search condition is evaluated for each row of the table before any deletions occur.
All rows that are marked for deletion are deleted at the end of the DELETE statement before checking any integrity constraint.
The DELETE statement might fail if it violates a FOREIGN KEY constraint. If the DELETE statement removes multiple rows and any one of the removed rows violates a constraint, the statement is canceled, an error is returned, and no rows are removed.