在庫データベースをアップグレードしていて、クエリを高速化したいと考えています。並べ替えの大部分は、それぞれが範囲である 2 つの列にあります。例えば。
SELECT ....
WHERE price BETWEEN 10.50 AND 34.20
AND date BETWEEN 1311264060 AND 1313942460
ORDER BY stockNo LIMIT 100
範囲が使用されているため、MySQL は 1 つの列のインデックスしか使用できないことを理解しています。つまり、インデックスを使用して価格帯に一致するレコードを抽出できますが、日付範囲に一致するレコードを見つけるためにテーブル スキャンに頼る必要があります。
価格とデータが x 軸と y 軸であるふりをして、空間データの列を埋め、MySQL の空間検索と R-TREE インデックスを利用してデータを抽出するというアイデアがありました。
R-TREESの経験者はいますか?これにより、速度が向上する可能性はありますか?