Пример SQL CREATE INDEX | Создать индекс в SQL

Оператор SQL CREATE INDEX используется для создания индексов в таблицах. Индексы используются для очень быстрого извлечения данных из базы данных. Пользователи не могут видеть индексы, и они используются только для ускорения поиска/запросов. Обновление таблицы с индексами занимает больше времени, чем обновление таблицы без (потому что индексы также нуждаются в обновлении). Таким образом, создавайте индексы только для столбцов, по которым будет часто выполняться поиск.

# Что такое индекс в SQL

index — это метод настройки производительности, позволяющий быстрее извлекать записи.

Индекс SQL создает запись для каждого значения, которое появляется в индексированных столбцах.

Каждое имя индекса должно быть уникальным в базе данных.

Пример SQL CREATE INDEX

SQL-индексы используются для повышения эффективности поиска данных, представляя данные в определенном порядке при объединении таблиц. (см. руководства «JOIN») и многое другое.

Индекс — это «системный» объект, то есть его использует менеджер баз данных.

Частично это использование СУБД для обновления индекса, когда данные, используемые индексом, изменяются в связанной таблице.

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

Если вы обнаружите, что ваши SQL-запросы работают медленно на для данной таблицы или таблиц создание индекса — это первое, что необходимо рассмотреть, чтобы исправить эту проблему.

См. следующее синтаксис CREATE INDEX.

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

См. следующий пример.

 CREATE INDEX IDX_ProductNameON Products (ProductName); 

В приведенном выше запросе мы создали индекс с именем IDX_ProductName на Продукты , а имя столбца — ProductName .

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

 CREATE INDEX IDXnameON Products (ProductName, id); 

В приведенном выше запросе мы изменили имя синтаксиса и добавили два столбцы.

  1. ProductName
  2. id

A простой индекс — это индекс для одного столбца, тогда как составной индекс — это индекс для двух или более столбцов. В приведенных выше примерах ProductNameIx — это простой индекс, потому что есть только один столбец, а IDX_proname_id — это составной индекс, потому что есть два столбца.

Не существует строгого или универсального правила именования индекса. Общепринятым методом является размещение префикса, такого как «IDX_», перед именем индекса, чтобы избежать путаницы с другими объектами базы данных..

Также неплохо предоставить информацию о том, в какой таблице и столбце (-ах) используется индекс.

Вот что вам нужно обратите внимание, что точный синтаксис для CREATE INDEX может отличаться для разных СУБД. Обратитесь к руководству по базе данных, чтобы узнать о соответствующем синтаксисе базы данных.

#Unique Index in SQL

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

Если мы хотим создать уникальный индекс в таблице, вам необходимо укажите ключевое слово UNIQUE в операторе CREATE INDEX.

См. следующий пример.

 CREATE UNIQUE INDEX IDX_ProductName ON Apps (ProductName); 

В приведенном выше запросе мы создали индекс с именем IDX_ProductName в таблице приложений. Имя столбца, по которому мы индексируем, находится здесь

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

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

Наконец, Пример инструкции SQL CREATE INDEX окончен.

См. Также

SQL CHARINDEX

Группа SQL По

Порядок SQL По

Обратный SQL

Оцените статью
nanomode.ru
Добавить комментарий