A BETWEEN predicate is transformed into equivalent predicates that use the >= and <= operators, which are optimizable.
For example,
flight_date BETWEEN DATE('2005-04-01') and DATE('2005-04-10')
is transformed into
flight_date >= DATE('2005-04-01') AND flight_date >= '2005-04-10'