DELETE 是一个用于删除一个或多个行的DML命令。
DELETE 在PostgreSQL中一直存在。
变更历史
- PostgreSQL 18
- 在
RETURNING子句中添加了对OLD/NEW的支持 (提交 80feb727)
- 在
- PostgreSQL 9.1
- 支持在
WITH中使用DELETE(提交 389af951)
- 支持在
- PostgreSQL 8.3
- 添加了
WHERE CURRENT OF语法(提交 6808f1b1)cursor_name
- 添加了
- PostgreSQL 8.2
- 添加了对
RETURNING子句的支持(提交 7a3e30e6)
- 添加了对
- PostgreSQL 8.1
- 添加了对
USING子句的支持(提交 f5ab0a14)
- 添加了对
示例
DELETE 的基本用法示例
postgres=# DELETE FROM foo; DELETE 1
将 DELETE 与 RETURNING 一起使用
postgres=# DELETE FROM foo RETURNING *; id | val ----+------------------------------- 1 | 2020-11-27 08:32:17.741344+01 (1 row) DELETE 1
参考资料
- PostgreSQL documentation: DELETE
