Delete
Removes rows from a table.
Synopsis
DELETE FROM [ ONLY ] table [ WHERE condition ]
Parameters
table
The name of the table from which you are deleting rows.
condition
The condition that identifies rows to be deleted. This is just like the
WHERE
clause of aSELECT
query; refer to the reference entry titled âSELECTâ for more information on constructing conditions. Note that not providing aWHERE
condition will cause all rows to be deleted from a table.
Results
DELETE count
The message returned when the command is executed. The count
is the number of rows that were removed. If that number is 0,
then either no rows met the specified condition, or there were no rows in the table to be
removed.
Description
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 will then be left with an empty table.
Note
Use TRUNCATE
to empty a table more efficiently (and explicitly) 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.
Example
The following ...
Get Practical PostgreSQL now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.