Почему MySQL использует другой индекс для SELECT * VS SELECT CUSTING_ID? [закрыто]MySql

Форум по Mysql
Anonymous
Почему MySQL использует другой индекс для SELECT * VS SELECT CUSTING_ID? [закрыто]

Сообщение Anonymous »

У меня есть клиент таблицы, где я создал три индекса на основе состояния, точек и одного составного индекса IDX_STATE_POINT , и все работают хорошо, но когда я запускаю этот запрос

Код: Выделить всё

explain select customer_id
from customers
where state = 'ca' and points > 1000
Это дает мне строки, сканируемые 52, что является хорошей производительностью по composite_index idx_state_point .
Но с другой стороны, когда я запускаю один и тот же запрос и просто хочу показать или извлекать все колонки, дает мне другое сканирование строки

Код: Выделить всё

explain select *
from customers
where state='ca' and points>1000
В этом же запросе он дает мне сканирование 122 ряда , используя индекс состояния. Почему?>

Подробнее здесь: https://stackoverflow.com/questions/795 ... ustomer-id

Вернуться в «MySql»