PostgreSQL DELETE 语句

你可以使用 DELETE 语句来删除 PostgreSQL 表中的数据。

语法

以下是 DELETE 语句删除数据的通用语法:

									DELETE FROM table_name WHERE [condition];
								

如果没有指定 WHERE 子句,PostgreSQL 表中的所有记录将被删除。

一般我们需要在 WHERE 子句中指定条件来删除对应的记录,条件语句可以使用 AND 或 OR 运算符来指定一个或多个。

实例

创建 COMPANY 表(下载 COMPANY SQL 文件 ),数据内容如下:

									yssmxdb# select * from COMPANY;
 id_name _age_address  _salary
----+-------+-----+-----------+--------
  1_Paul _ 32_California|  20000
  2_Allen_ 25_Texas    _ 15000
  3_Teddy_ 23_Norway   _ 20000
  4_Mark _ 25_Rich-Mond_ 65000
  5_David_ 27_Texas    _ 85000
  6_Kim  _ 22_South-Hall|  45000
  7_James_ 24_Houston  _ 10000
(7 rows)
								

以下 SQL 语句将删除 ID 为 2 的数据:

									yssmxdb=# DELETE FROM COMPANY WHERE ID = 2;
								

得到结果如下:

									id_name _age_address    _salary
----+-------+-----+-------------+--------
  1_Paul _ 32_California _ 20000
  3_Teddy_ 23_Norway     _ 20000
  4_Mark _ 25_Rich-Mond  _ 65000
  5_David_ 27_Texas      _ 85000
  6_Kim  _ 22_South-Hall _ 45000
  7_James_ 24_Houston    _ 10000
(6 rows)
								

从上面结果可以看出,id 为 2 的数据已被删除。

以下语句将删除整张 COMPANY 表:

									DELETE FROM COMPANY;