DELETE Statement
The DELETE statement can be executed to delete rows that satisfy the WHERE clause from a specified table. If the WHERE clause does not exist, all rows in the table will be deleted and only the table structure is retained.
Syntax
DELETE FROM table_name 
       [WHERE condition];
Parameter Description
- table_name - Specifies the name (optionally schema-qualified) of the target table. - Value range: an existing table name 
- condition - Specifies an expression that returns a Boolean value. Only rows for which this expression returns true will be deleted. 
Examples
Create the customer_t1_bak table whose structure and data are the same as those of the customer_t1 table.
openGauss=# CREATE TABLE customer_t1_bak AS TABLE customer_t1;
INSERT 0 9
The customer_t1_bak table is created, and the data in the table is as follows:
openGauss=# SELECT * FROM customer_t1_bak;
 c_customer_sk | c_customer_id | c_first_name | c_last_name | amount
---------------+---------------+--------------+-------------+--------
          3869 | hello         | Grace        |             |   1000
          3869 | hello         | Grace        |             |   1000
          3869 |               | Grace        |             |
          3869 | hello         |              |             |
          3869 | hello         |              |             |
               |               |              |             |
          6985 | maps          | Joes         |             |   2200
          9976 | world         | James        |             |   5000
          4421 | Admin         | Local        |             |   3000
(9 rows)
Run the following statement to delete the employee whose c_customer_sk is set to 3869 from the customer_t1_bak table:
openGauss=# DELETE FROM customer_t1_bak WHERE c_customer_sk = 3869;
DELETE 5
The following information is displayed, indicating that the row where c_customer_sk is set to 3869 has been deleted.
openGauss=# SELECT * FROM customer_t1_bak;
 c_customer_sk | c_customer_id | c_first_name | c_last_name | amount
---------------+---------------+--------------+-------------+--------
               |               |              |             |
          6985 | maps          | Joes         |             |   2200
          9976 | world         | James        |             |   5000
          4421 | Admin         | Local        |             |   3000
(4 rows)
If the WHERE statement is not specified, the data of the entire table is deleted by default, and only the table structure is retained.
openGauss=# DELETE FROM customer_t1_bak;
DELETE 4
The result is as follows:
openGauss=# SELECT * FROM customer_t1_bak;
 c_customer_sk | c_customer_id | c_first_name | c_last_name | amount
---------------+---------------+--------------+-------------+--------
(0 rows)