zap*_*dlo 5 postgresql sql-update
说,我有以下查询:
UPDATE table_name
SET column_name1 = column_value1, ..., column_nameN = column_valueN
WHERE id = M
Run Code Online (Sandbox Code Playgroud)
问题是, column_value1, ..., column_valueN 没有改变。这个查询会被真正执行吗?在这种情况下,与使用真正更改的数据进行更新相比,性能如何?如果我每页有大约 50 个这样的查询且数据未更改怎么办?
您需要通过仅指定更改的列和行来帮助 postgresql。它将继续对您指定的任何内容执行更新,而不检查数据是否已更改。
ps 这就是 ORM 派上用场的地方。
编辑:您可能还对如何加快 PostgreSQL 中的更新/替换操作感兴趣?,OP 经历了所有的麻烦来加速 UPDATE 性能,而仅通过更新更改的数据就可以实现最佳性能。