【发布时间】:2020-07-26 14:30:53
【问题描述】:
我试图了解 Postgres 中的仅索引扫描。它说只执行索引扫描是因为普通索引(二级)执行两步查找,即索引没有附加完整的行,而是行标识符(ctid),磁盘上的物理位置,所以首先它找到行的使用索引列的物理位置,然后进入主表获取实际的行数据。
第二步不应该更快吗,因为它涉及直接进入行并获取数据,或者是否需要对主表执行顺序扫描以找到特定的 ctid,以及是否可以直接进入row 使用 ctid 那么为什么需要仅索引扫描?
【问题讨论】:
标签: postgresql database-design database-indexes