1つのMySQLデータベーステーブルに、次のインデックスがあります。
- タイプ:BTREE
- ユニーク:いいえ
- パック:いいえ
- フィールド:姓、名、年齢
このようなクエリを実行すると...
SELECT firstname, lastname FROM table ORDER BY lastname ASC, firstname ASC, age DESC
...MySQLはインデックスを使用しません。
しかし、「年齢」を昇順で使用すると、次のようになります。
SELECT firstname, lastname FROM table ORDER BY lastname ASC, firstname ASC, age ASC
なんでそうなの?列は常に昇順でのみインデックス付けされますか?または、それらすべてを降順で使用することもできますか?混合注文を使用できないのはなぜですか?
前もって感謝します!