Predicate evaluation
An expression in the qualification of a query is a predicate.
The WHERE clause in the following query is a predicate:
SELECT name, boundary from cities
WHERE Overlaps(boundary, '(1,1), (5,5), (7,7), (8,9)');
The database server evaluates the predicate for every row in the table and returns the rows that satisfy the predicate to the client. Each predicate in a qualification eliminates rows from the candidate set. After the server determines that a row does not satisfy a predicate, it moves on to the next candidate row.
Most predicate evaluation is straightforward—values of interest are extracted from a candidate row and evaluated against the predicate. However, there are some cases where predicates in the qualification behave in a unique way.