17:21
Создание индексов: Команда CREATE INDEX.

Курс по SQL

Урок 40: Создание индексов: Команда CREATE INDEX

В этом уроке мы рассмотрим создание индексов в SQL с использованием команды CREATE INDEX. Индексы используются для повышения производительности запросов, позволяя быстрее находить и сортировать данные в таблицах.

Что такое индекс?

Индекс — это специальная структура данных, которая ускоряет операции поиска, сортировки и фильтрации в таблицах базы данных. Индексы создаются на одном или нескольких столбцах таблицы и позволяют СУБД быстрее находить нужные строки.

Создание индекса с помощью CREATE INDEX

Команда CREATE INDEX используется для создания индекса на одном или нескольких столбцах таблицы. Синтаксис команды следующий:

CREATE INDEX имя_индекса
ON имя_таблицы (столбец1, столбец2, ...);

Рассмотрим пример создания индекса на столбце "Имя" таблицы "Клиенты":

CREATE INDEX idx_Имя
ON Клиенты (Имя);

Результат выполнения

Индекс idx_Имя создан успешно.

Создание уникального индекса

Уникальный индекс обеспечивает уникальность значений в столбце или сочетании столбцов. Синтаксис команды для создания уникального индекса следующий:

CREATE UNIQUE INDEX имя_индекса
ON имя_таблицы (столбец1, столбец2, ...);

Рассмотрим пример создания уникального индекса на столбце "Email" таблицы "Пользователи":

CREATE UNIQUE INDEX idx_Email
ON Пользователи (Email);

Результат выполнения

Уникальный индекс idx_Email создан успешно.

Создание составного индекса

Составной индекс создается на нескольких столбцах таблицы. Синтаксис команды следующий:

CREATE INDEX имя_индекса
ON имя_таблицы (столбец1, столбец2);

Рассмотрим пример создания составного индекса на столбцах "Фамилия" и "Имя" таблицы "Сотрудники":

CREATE INDEX idx_ФамилияИмя
ON Сотрудники (Фамилия, Имя);

Результат выполнения

Составной индекс idx_ФамилияИмя создан успешно.

Создание индекса на основе выражения

В некоторых СУБД можно создавать индексы на основе выражений. Это позволяет индексировать данные, преобразованные с помощью функции или вычисления. Рассмотрим пример создания индекса на основе выражения для столбца "Цена" таблицы "Продукты", где индексируются округленные значения:

CREATE INDEX idx_ОкругленнаяЦена
ON Продукты ((ROUND(Цена, 0)));

Результат выполнения

Индекс idx_ОкругленнаяЦена создан успешно.

Удаление индекса

Для удаления индекса используется команда DROP INDEX. Синтаксис команды следующий:

DROP INDEX имя_индекса;

Рассмотрим пример удаления индекса "idx_Имя" таблицы "Клиенты":

DROP INDEX idx_Имя;

Результат выполнения

Индекс idx_Имя удален успешно.

Упражнения

Упражнение 1: Создание индекса на столбце "Фамилия"

Создайте индекс на столбце "Фамилия" таблицы "Сотрудники".

Решение:

CREATE INDEX idx_Фамилия
ON Сотрудники (Фамилия);

Объяснение: Мы создали индекс idx_Фамилия на столбце "Фамилия" таблицы "Сотрудники".

Упражнение 2: Создание уникального индекса на столбце "НомерТелефона"

Создайте уникальный индекс на столбце "НомерТелефона" таблицы "Клиенты".

Решение:

CREATE UNIQUE INDEX idx_НомерТелефона
ON Клиенты (НомерТелефона);

Объяснение: Мы создали уникальный индекс idx_НомерТелефона на столбце "НомерТелефона" таблицы "Клиенты".

Упражнение 3: Создание составного индекса на столбцах "Город" и "Улица"

Создайте составной индекс на столбцах "Город" и "Улица" таблицы "Адреса".

Решение:

CREATE INDEX idx_ГородУлица
ON Адреса (Город, Улица);

Объяснение: Мы создали составной индекс idx_ГородУлица на столбцах "Город" и "Улица" таблицы "Адреса".

Упражнение 4: Удаление индекса

Удалите индекс "idx_Фамилия" таблицы "Сотрудники".

Решение:

DROP INDEX idx_Фамилия;

Объяснение: Мы удалили индекс idx_Фамилия таблицы "Сотрудники".

Категория: SQL | Просмотров: 91 | Добавил: Admin | Рейтинг: 1.0/1
Всего комментариев: 0
Имя *:
Email *:
Код *: