数据库🔥7.0

PostgreSQL 18 增强 RETURNING 子句:支持引用 OLD 和 NEW 新旧行数据

原标题: PostgreSQL 18 增强 RETURNING 子句:支持引用 OLD 和 NEW 新旧行数据

微博-数据库关键词·2026/10/10 11:47:02🔗 原文

📋总体概括

PostgreSQL 18在RETURNING子句中引入对OLD和NEW行引用的支持,使UPDATE、DELETE、INSERT、MERGE等DML语句在返回结果时可同时访问修改前与修改后的行数据。此前开发者需通过触发器或额外的查询才能获得旧值,这一语法增强显著简化了变更审计、差异对比等常见场景的实现,是Postgres持续吸收商业数据库便利特性、降低应用层复杂度的又一例证。

⚡关键信息

  • ▸Postgres 18在RETURNING子句中支持OLD和NEW行引用
  • ▸此前获取修改前的旧值需依赖触发器或额外查询
  • ▸该特性适用于INSERT、UPDATE、DELETE、MERGE等DML语句
  • ▸典型场景包括变更审计与数据差异对比,可减少应用层代码

🔥犀利点评

这功能Oracle们早就有了,Postgres补课罢了,但补得好就是好。审计、CDC、乐观锁这些场景以前全靠触发器硬扛,性能和可维护性都难看。RETURNING直接吐新旧值,应用层少一轮往返。真正的问题仍是:Postgres小步快跑攒特性很勤,但大版本升级成本高,多少团队还停在12、13?特性再香,落地遥遥无期也是白搭。

本文由本站自动聚合,以下为原始来源:前往 微博-数据库关键词 阅读全文 →