首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PostgreSQL更新部分索引

PostgreSQL更新部分索引
EN

Stack Overflow用户
提问于 2021-10-14 08:22:53
回答 1查看 29关注 0票数 1

我只对具有非空值的列进行部分索引过滤。如果对更新前后此值为NULL的行进行了更新,那么索引是否会被触动?

我有一个表,其中的行是使用名为"deleted“的列进行软删除的,该列包含一个可以为空的时间戳。我想创建一个查询,通过搜索此列来硬删除一周前删除的所有行。这个表具有非常高的更新吞吐量,但它们只接触deleted=NULL中的“活动”行,我不想增加锁定或更新另一个索引的开销。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-14 12:39:39

如果插入、更新或删除在索引的WHERE条件中排除的行(如果在更新的情况下,新行版本也被排除),则不必修改索引,因此您不必为此付出代价。

索引无论如何都没有被锁定,所以您不必担心。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69567380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档