【发布时间】:2019-04-17 10:46:33
【问题描述】:
非常简单地更新以将大约 500 万行的表中的 1 列重置为:
UPDATE t_Daily
SET Price= NULL
价格不属于该表的任何索引。
在没有索引的情况下运行这个需要 45 秒。
使用一个或多个索引运行此操作至少需要 20 分钟(我一直不得不停止它)。
我完全理解为什么维护索引会影响插入和更新语句的性能,但是这次更新并没有改变表索引,为什么它会对性能产生如此可怕的影响?
非常感谢任何想法。
【问题讨论】:
-
您能否提供一个minimal reproducible example 来证明这一点?
-
对不起,我不明白,要我提供500万行数据吗?
标签: postgresql indexing sql-update