📚 目录
🛠️ 概述
DELETE
语句用于从 PostgreSQL 数据库中的表中删除记录。通常,DELETE
语句会结合 WHERE
子句来删除特定的行。如果不使用 WHERE
子句,整个表的所有记录都会被删除。为了避免错误,最好在删除之前先确认条件是否正确。
📝 基本语法
DELETE
语句的基本语法如下:
DELETE FROM table_name
WHERE condition;
table_name
:指定要删除记录的表。condition
:删除满足条件的记录,若没有此条件,则删除所有记录。
✂️ 使用 WHERE
子句
使用 WHERE
子句来指定删除条件,这样可以确保只删除符合特定条件的记录。
示例:
DELETE FROM employees
WHERE department = 'Sales';
此查询将删除所有 department
为 Sales
的员工记录。
🚫 删除所有记录
如果不使用 WHERE
子句,DELETE
语句会删除表中的所有记录,但表结构会保持不变。
示例:
DELETE FROM employees;
该查询将删除 employees
表中的所有记录。
🔄 使用 RETURNING
语句
RETURNING
子句可以用来返回删除的记录,以便查看已删除的数据。这在调试和日志记录中非常有用。
示例:
DELETE FROM employees
WHERE position = 'Intern'
RETURNING id, name;
该查询将删除所有职位为 Intern
的员工,并返回他们的 id
和 name
。
🧑💻 删除与子查询
你可以使用子查询来删除数据。通过子查询,你可以根据另一个表中的数据删除记录。
示例(使用子查询):
DELETE FROM employees
WHERE department = (SELECT department_id FROM departments WHERE name = 'HR');
该查询将删除所有 department
列为 HR
部门的员工记录,通过子查询来获取 HR
部门的 ID。
📘 参考资料
- PostgreSQL 官方文档:DELETE
- 更多 PostgreSQL 删除技巧整理自:www.52kanjuqing.com
发表回复