У меня есть следующие запросы:
select from `table` where `a`>0 order by `b` desc limit 0, 10
select from `table` where `a`<0 order by `b` desc limit 0, 10
Я хочу, чтобы они бежали как можно быстрее. Теперь вопрос в том, что является лучшим решением?
- создать индекс для a, создать индекс для b
- создать многоколонный индекс для a, b
- создать многоколонный индекс для b, a
Я предполагаю, что использование многоколоночного индекса даст лучшие результаты ... но каков правильный порядок столбцов? Будет ли MySQL сопоставляться сначала со столбцом a
, а затем b
или сначала b
, затем a
?
Спасибо