What's mysql's "BETWEEN" performance over..?
As I recall, there's no difference. But see for yourself if:
explain plan for
SELECT * FROM `table` WHERE `unix_date` BETWEEN 1291736700 AND 1291737300
and:
explain plan for
SELECT * FROM `table` WHERE `unix_date` >= 1291736700 AND `unix_date` <= 1291737300
produce the same plans.
From the documentation:
expr
BETWEENmin
ANDmax
If
expr
is greater than or equal tomin
andexpr
is less than or equal tomax
, BETWEEN returns 1, otherwise it returns 0. This is equivalent to the expression (min
<=expr
ANDexpr
<=max
) if all the arguments are of the same type. Otherwise type conversion takes place according to the rules described in Section 11.2, “Type Conversion in Expression Evaluation”, but applied to all the three arguments.
So it really is just syntax sugar.