小编Fur*_*der的帖子

PostgreSQL 可以在其索引中使用空值吗?

我一直在读这本书,它说

数据库假定 Indexed_Col IS NOT NULL 覆盖的范围太大而无用,因此数据库不会从这种情况驱动到索引。

我承认这本书已经有 10 多年的历史了,但它已经证明了 非常有用——使用从书中收集的说明,我已经将查询速度提高了 10 倍。

此外,在运行EXPLAIN ANALYZESELECT查询,我发现没有我的指标正在使用,所有的权利,即使他们应该是。

因此,我的问题是:

假设有一个表,它有一个列,其列定义包括“NOT NULL”,并且存在一个覆盖该列的索引,该索引是否会用于该表的查询,其中该列是查询的一部分?

喜欢:

CREATE TABLE my_table(
a varchar NOT NULL
);

CREATE INDEX ix_my_table ON my_table(a);

SELECT a from my_table;
Run Code Online (Sandbox Code Playgroud)

postgresql index index-tuning postgresql-9.1

10
推荐指数
1
解决办法
5017
查看次数

标签 统计

index ×1

index-tuning ×1

postgresql ×1

postgresql-9.1 ×1