Уникальный индекс (Unique Index) Гарантирует уникальность значений в индексируемом столбце (или наборе столбцов).
Какие виды индексов бывают?
Уникальный индекс (Unique Index) Гарантирует уникальность значений в индексируемом столбце (или наборе столбцов).
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
- Уникальный индекс (Unique Index) Гарантирует уникальность значений в индексируемом столбце (или наборе столбцов).
- Первичный ключ (Primary Key) Специальный уникальный индекс, используемый для идентификации каждой строки в таблице. Таблица может иметь только один первичный ключ.
- Кластерный индекс (Clustered Index) Определяет физический порядок хранения строк данных в таблице. Таблица может иметь только один кластерный индекс. Данные хранятся в порядке, соответствующем структуре индекса.
- Некластерный индекс (Non-Clustered Index) Хранит данные отдельно от строк таблицы. Содержит указатели на фактические строки данных. Таблица может иметь несколько некластерных индексов.
- Покрывающий индекс (Covering Index) Некластерный индекс, который содержит все столбцы, необходимые для выполнения запроса, устраняя необходимость доступа к таблице за дополнительными данными.
- Составной индекс (Composite/Compound Index) Индекс, построенный на нескольких столбцах таблицы. Порядок столбцов важен для эффективности запросов.
- Полнотекстовый индекс (Full-Text Index) Используется для выполнения полнотекстового поиска по символьным данным.
- Пространственный индекс (Spatial Index) Используется для индексации пространственных данных (географических координат, геометрических объектов).
- Битмаповый индекс (Bitmap Index) Используется для индексации столбцов с небольшим количеством дискретных значений. Эффективен для OLAP-систем.
- Функциональный/функционально-основанный индекс (Function-Based Index) Индекс, построенный на результате функции или выражения, применяемого к одному или нескольким столбцам.
- Хэш-индекс (Hash Index) Использует хэш-значения для快速查找 данных. Эффективен для проверки равенства (=).
-- Пример создания уникального индекса
CREATE UNIQUE INDEX idx_email
ON users (email);
-- Пример создания составного индекса
CREATE INDEX idx_lastname_firstname
ON employees (last_name, first_name);