Postgres使用主键索引作为覆盖索引

时间:2012-07-06 22:22:58

标签: sql sql-server postgresql indexing

我想知道,在Postgres中,是否有任何缺点可以将额外字段存储到为主键隐式创建的索引中,以便不必创建更多索引。

这是在SQL Server中创建聚簇索引的常用技术。

修改

关于Postgres索引的好article。似乎Postgres索引动态与SQL服务器不同。

1 个答案:

答案 0 :(得分:4)

不,这是不可能的。

PostgreSQL不能“包含”列而不使它们在索引中“活跃”。

目前PostgreSQL不支持仅索引扫描。这将包含在即将发布的9.2版本中。

但是,向不需要的索引添加列可能会对更新造成性能损失,因为非索引列的更新效率比索引列高得多。