gpt4 book ai didi

postgresql - 空值的非选择性部分索引

转载 作者:行者123 更新时间:2023-11-29 13:59:53 24 4
gpt4 key购买 nike

我刚刚在我的数据库中发现了一个有趣的部分索引:

CREATE INDEX orders_idx
ON orders
USING btree
(status)
WHERE status IS NULL;

如您所见,它完全没有选择性,恕我直言,完全没有用,还是我遗漏了什么?

最佳答案

如果您有按状态过滤的查询为空(如评论中所述),或者需要对状态为空的条目运行维护,则此索引可能很有用。

例如,在我曾经从事的一个项目(没有这种类型的索引)中,我有一个保存日志/队列的导入过程。它在开始时将状态设置为排队,在进行时将状态设置为运行,并在完成时将状态设置为完成 - 但如果出现错误则将其设置为空。这将需要清理,因为其他表中的项目不会正确设置为所需的值。我需要定期查询 status is null 来诊断具体问题,或者运行清理脚本,这样数据库就不会充满部分导入。

关于postgresql - 空值的非选择性部分索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22637221/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com