📜  PostgreSQL-删除查询(1)

📅  最后修改于: 2023-12-03 15:18:39.479000             🧑  作者: Mango

PostgreSQL 删除查询

在 PostgreSQL 数据库中,可以使用 DELETE 查询来删除表中的行。DELETE 查询删除匹配指定条件的行,并返回被删除的行数。本文将介绍如何使用 DELETE 查询在 PostgreSQL 数据库中删除行。

语法

下面是 DELETE 查询的基本语法:

DELETE FROM table_name
WHERE condition;

例如,要删除表中名为 "customers" 的所有行,可以执行以下查询:

DELETE FROM customers;

要删除表中符合某个条件的特定行,可以使用 WHERE 子句指定条件:

DELETE FROM customers
WHERE customer_id = 1;

这个查询将删除名为 "customers" 的表中 customer_id = 1 的行。

示例

下面的示例将删除名为 "employees" 的表中所有 salary 大于 50000 的行:

DELETE FROM employees
WHERE salary > 50000;
返回值

DELETE 查询返回已删除的行数,可以使用以下方式获取该返回值:

DELETE FROM employees
WHERE salary > 50000
RETURNING *;

这个查询将返回已删除的行,供您进行进一步处理。

注意事项
  • 执行 DELETE 查询时请谨慎操作,因为删除的行无法恢复。
  • 如果没有指定 WHERE 子句,则会删除整个表。
  • 删除操作会占用较多系统资源,请确保您已备份数据并且没有其他用户正在使用该表。
  • 如果正在删除包含外键的表中的行,则需要先删除引用该行的其他表中的数据。
  • 在条件中使用索引可以加速查询速度。