`SELECT r.*, u.username
FROM `reservation` AS r JOIN
`users` AS u
WHERE u.id = r.user_id
AND DATE(r.bx_date) >= DATE('2012-08-22')
AND DATE(r.bx_date) <= DATE('2012-08-22')
AND r.status='1'
ORDER BY r.id desc`
テーブル予約には 500,000 レコードが含まれ、bx_date は 2012-01-01 から 2013-01-01 まで変化します。users テーブルに 40,000 レコード。bx_date は「日付」タイプです。
上記のクエリで 2012-08-22 のような日付を試した場合、8 秒かかります。でも試してみたら 2013-01-01 1秒くらいかかりました。
理由は何ですか ?
ありがとう