CREATE TABLE group_member (
group_id INT NOT NULL,
member_id INT NOT NULL,
content TEXT,
created_at DATETIME NOT NULL,
updated_at DATETIME NOT NULL,
PRIMARY KEY (group_id, member_id)
) ENGINE=InnoDB;
< /code>
Таблица имеет около 3 миллионов строк, а общий размер составляет около 5 ГБ. < /p>
Когда я запускаю этот запрос: < /p>
EXPLAIN SELECT group_id, member_id FROM group_member;
< /code>
План выполнения показывает дополнительное: использование индекса, который обычно означает индекс покрытия.
Но это использует только первичный ключ (кластерированный индекс). < /p>
confruct < /strong> < /p>
- в innodb, в целом. Стр. большие (из -за столбца содержимого). Таким образом, обычное преимущество производительности индекса покрытия (избегая обратного поиска) , на самом деле не существует здесь (и я даже не уверен, что это правильно называть это «покрытие», в первую очередь, так как это просто PK) . (InnoDB) считается индексом покрытия при выборе только столбцов PK? Сам?
Подробнее здесь: https://stackoverflow.com/questions/797 ... -selecting
Мобильная версия