добавить индекс на столбец, который содержит уникальные значения?

0

У меня есть столбец, который содержит уникальные значения, и полное сканирование таблицы будет выполняться навсегда.

из моего понимания

Если я использую уникальный индекс, он начнет поиск формы в начале таблицы, а затем остановится, когда найдет значение

в то время как неидеальный индекс будет искать в ближайшем диапазоне выражения where и что мне нужно

если у меня есть столбец, содержащий

Maple Louie    
Raphael Gudino    
Nereida Tankersley    
Alina Colletti    
Jeane Lamm    
Shonta Forsman    
Ciara Cardamone

если бы я использовал неидеальный индекс, он будет искать в пределах диапазона, например

where name = Jeane Lamm

будет ли поиск базы данных для имен начинаться только с буквы j?

или он будет выполнять полное сканирование?

Теги:
database

1 ответ

0
Лучший ответ

Хотя индексы можно полностью сканировать, это не так, как они работают для многих операций.

Когда у вас есть равенство, например, where name = 'Jeane Lamm', тогда индекс просматривает. Это намного быстрее, чем сканирование.

Наиболее распространенная структура индекса похожа на двоичное дерево, поэтому поиск определенного значения очень и очень быстрый. Это одна из причин, по которой индексы могут значительно повысить производительность запросов.

  • 0
    Спасибо за ваш ответ. Исходя из вашего опыта для уникальной колонки, какую лучше использовать в индексе mysql или уникальную опцию?
  • 0
    @areviewsapp. , , Они делают разные вещи. Если вы хотите, чтобы значение было уникальным, используйте ограничение уникальности или индекс. Если вы не хотите / нуждаетесь в уникальности, то вам нужно создать отдельный индекс.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню