Some predicates provide clear-cut starting and stopping points. A predicate provides start or stop conditions, and is therefore optimizable, when at least one of the following conditions is met.
WHERE orig_airport = 'SFO'
The following is not:
WHERE lower(orig_airport) = 'sfo'
References to contiguous columns in other predicates in the statement when there is a multi-column index can further define the starting or stopping points. (If the columns are not contiguous with the first column, they are not optimizable predicates but can be used as qualifiers.) For example, given a composite index on FlightAvailability (flight_id, segment_number, and flight_date), the following predicate satisfies that condition:
WHERE flight_id = 'AA1200' AND segment_number = 2
The following one does not:
WHERE flight_id = 'AA1200' AND flight_date = CURRENT_DATE