我想知道,在Postgres中,是否有任何缺点可以将额外字段存储到为主键隐式创建的索引中,以便不必创建更多索引。
这是在SQL Server中创建聚簇索引的常用技术。
修改
关于Postgres索引的好article。似乎Postgres索引动态与SQL服务器不同。
答案 0 :(得分:4)
不,这是不可能的。
PostgreSQL不能“包含”列而不使它们在索引中“活跃”。
目前PostgreSQL不支持仅索引扫描。这将包含在即将发布的9.2版本中。
但是,向不需要的索引添加列可能会对更新造成性能损失,因为非索引列的更新效率比索引列高得多。