добавить индекс на столбец, который содержит уникальные значения? - PullRequest
0 голосов
/ 19 мая 2018

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

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

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

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

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

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

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

where name = Jeane Lamm

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

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

1 Ответ

0 голосов
/ 19 мая 2018

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...