Skip to main content


Use the DELETE command to permanently remove rows from a table.


DELETE FROM table_name
WHERE condition
[ RETURNING col_name ];


Parameter or clauseDescription
table_nameThe table where you want to remove records.
WHERE conditionSpecify which rows you want to remove using an expression that returns a boolean value. Rows for which this expression returns true will be removed.
If you omit the WHERE clause, all rows of records in the table will be deleted but the table structure will be kept.
RETURNINGReturns the values of any column based on each deleted row.


The taxi_trips table has three records:

SELECT * FROM taxi_trips;
 id | distance |    city     
1 | 16 | Yerba Buena
2 | 23 | New York
3 | 6 | Chicago
(3 rows)

The following statement removes the record with id 3 from the table. Also, it returns the value of id for the deleted row.

DELETE FROM taxi_trips 
WHERE id = 3

The following statement removes all rows from the table.

DELETE FROM taxi_trips 

Let's see the result.

SELECT * FROM taxi_trips;
 id | distance | city 
(0 rows)

Help us make this doc better!

Was this page helpful?

Happy React is loading...