DELETE FROM [ ONLY ] table [ WHERE condition ]
The name of the table from which you are deleting rows.
The condition that identifies rows to be deleted. This is just like the WHERE clause of a SELECT query; refer to SELECT" for more information on constructing conditions. Note that not providing a WHERE condition will cause all rows to be deleted from a table.
Use DELETE to remove rows from a table. Only rows that match a condition you specify will be deleted. To delete all rows from a table, do not specify a condition. Issuing a DELETE with no condition results in all rows being deleted from the target table. You are then be left with an empty table.
Note: Use TRUNCATE to empty a table more efficiently than with an unconditional DELETE statement.
Use the ONLY clause to prevent the deletion of rows from tables that inherit from the target table. ONLY restricts the delete operation to only the target table. Otherwise, the delete operation will affect not only the target table, but all tables that inherit from it.
The following syntax removes all shipped orders from the shipments table that were placed by customer ID 142, and that were shipped before August 7, 2001:
booktown=# DELETE FROM shipments booktown-# WHERE customer_id = 142 booktown-# AND ship_date < '2001-08-07'; DELETE 1