|< < 24 > >|

Combining operators

Covering index optimization

Table: R(a, b, c, d, e, f, g) Index: abc_idx(a, b, c) Query: select b, c from R where a = 1 and g < 3

Execution plan

Project( SelectScan( GetTableRow( R, SelectIndex(abc_idx, a = 1)), g < 3) [b, c])

  • Index: Index key -> row id

  • SelectIndex: Yields row ids

  • GetTableRow: Row id -> Row of table. Expensive! Lots of random access

|< < 24 > >|