 |
Index for Section 5 |
|
 |
Alphabetical listing for D |
|
 |
Bottom of page |
|
DELETE(5)
NAME
DELETE - delete rows of a table
SYNOPSIS
DELETE FROM [ ONLY ] table [ WHERE condition ]
INPUTS
table
The name of an existing table.
condition
This is an SQL selection query which returns the rows which are to be
deleted.
Refer to the SELECT statement for further description of the WHERE
clause.
OUTPUTS
DELETE count
Message returned if items are successfully deleted. The count is the
number of rows deleted.
If count is 0, no rows were deleted.
DESCRIPTION
DELETE removes rows which satisfy the WHERE clause from the specified
table.
If the condition (WHERE clause) is absent, the effect is to delete all rows
in the table. The result is a valid, but empty table.
Tip: TRUNCATE [truncate(5)] is a PostgreSQL extension which provides a
faster mechanism to remove all rows from a table.
By default DELETE will delete tuples in the table specified and all its
sub-tables. If you wish to only update the specific table mentioned, you
should use the ONLY clause.
You must have write access to the table in order to modify it, as well as
read access to any table whose values are read in the condition.
USAGE
Remove all films but musicals:
DELETE FROM films WHERE kind <> 'Musical';
SELECT * FROM films;
code | title | did | date_prod | kind | len
-------+---------------------------+-----+------------+---------+-------
UA501 | West Side Story | 105 | 1961-01-03 | Musical | 02:32
TC901 | The King and I | 109 | 1956-08-11 | Musical | 02:13
WD101 | Bed Knobs and Broomsticks | 111 | | Musical | 01:57
(3 rows)
Clear the table films:
DELETE FROM films;
SELECT * FROM films;
code | title | did | date_prod | kind | len
------+-------+-----+-----------+------+-----
(0 rows)
COMPATIBILITY
SQL92
SQL92 allows a positioned DELETE statement:
DELETE FROM table WHERE
CURRENT OF cursor
where cursor identifies an open cursor. Interactive cursors in PostgreSQL
are read-only.
 |
Index for Section 5 |
|
 |
Alphabetical listing for D |
|
 |
Top of page |
|