我对 36 数百万行的表运行更新查询。 此请求需要 45 分钟才能运行。已处理字段已编制索引,数据库位于 SSD 上。
UPDATE batch_item SET processed=true
你知道为什么这么长吗?
我不知道您的索引有多重要,以及它是否 100% 可用至关重要,但删除索引、设置值并在最后重新添加索引可能会节省您的时间。
这里有一些关于批量更新操作的有用信息:https://www.codacy.com/blog/how-to-update-large-tables-in-postgresql/