Констрейнт INDEX используется для того, чтобы крайне быстро получать данные из таблицы. Данный констрейнт может быть создан с использованием как одной, так и или группы колонок в таблице. Когда INDEX создан, для каждой записи указывается ID, прежде, чем выдавать данные.
Правильное использование данного элемента способно крайне повысить производительность при работе с большими базами данных (далее – БД). Но нам нужно быть осторожными при создании индексов.
Пример:
Предположим, что у нас есть таблица developers, которая имеет следующий вид:
CREATE TABLE developers(
ID INT NOT NULL,
NAME VARCHAR (100) NOT NULL,
SPECIALTY VARCHAR(100) NOT NULL,
SALARY INT NOT NULL,
PRIMARY KEY (ID)
);
Мы можем создать индекс для одной или нескольких колонок.
Общий синтаксис имеет такую форму:
CREATE INDEX имя_индекса
ON имя_таблицы ( колонка1, колонка2, колонка3 ...);
В случае с нашей таблицей, мы можем создать индекс для специальности (SPECIALTY).
В RDBMS MySQL SQL команда для этого будет выглядеть следующим образом:
CREATE INDEX idx_specialty
ON developers ( SPECIALTY );
Для удаления индекса в той же RDBMS нам необходимо использовать команду, указанную ниже:
ALTER TABLE developers
DROP INDEX idx_specialty;
На этом мы заканчиваем изучение констрейнта INDEX.