Examples: Search Conditions for Inverted Columns
Excerpt from SQL Statement |
Search Strategy |
... where firstkey >= 123 |
The table is searched sequentially from the line with the key ‘123’. |
... where invcolumn1 = 'Miller' and firstkey >= 123 |
The inversion list with the value ‘Miller’ is searched from the key ‘123’ to the end of the list. |
... where invcolumn1 = 'Miller' and invcolumn2 < 'C' |
The system creates a logical inversion list that contains all inversion lists of invcolumn 2 that begin with a value smaller than 'C' (' ', 'A', 'B'). The intersection of the logical inversion list and the inversion list with the value ‘Miller’ is determined and the entirety of this intersection is processed. |
... where invcolumn1 = 'Miller' and invcolumn2 = 'Don' |
The intersection of both inversion lists is determined and processed completely. |
... where invcolumn1 IN ('Miller', 'Smith', 'Hawk') |
The entirety of three inversion lists are processed. |
... where invcolumn2 > 8965 and firstkey = 34 and secondkey between 12 and 18 |
All inversion lists of invcolumn2 whose values are greater than 8965 are processed. However, they are only considered within the key limits ’34, 12’ and ’34, 18’. |
... where |
The entirety of the named index ind with the values ‘Düsseldorf’, ‘40223’ and 10000 is processed. |
... wheremultinvcolumn1 = 'Düsseldorf' and multinvcolumn2 between '40221' and '40238' |
The inversion list within and including the values ‘Düsseldorf’, ‘40221’ (binary zeros), and ‘Düsseldorf’, ‘40238’ (binary ones) is processed. |