Перейти к содержимому
Последнее обновление

BUILD INDEX

Описание​

Строит индекс для всей таблицы или её разделов. Необходимо указать имя таблицы и имя индекса; также можно указать список разделов.

Синтаксис​

BUILD INDEX <index_name> ON <table_name> [partition_list]

Где:

partition_list
: PARTITION (<partition_name1>[ , parition_name2 ][ ... ])

Обязательные параметры​

<index_name>

Задаёт идентификатор (имя) индекса, который должен быть уникальным в пределах таблицы.

Идентификатор должен начинаться с буквы (или символа любого языка, если включена поддержка имён в Unicode) и не может содержать пробелы или специальные символы, если вся строка идентификатора не заключена в обратные кавычки (например, My Object).

В качестве идентификатора нельзя использовать зарезервированные ключевые слова.

Подробнее см. в разделах «Требования к идентификаторам» и «Зарезервированные ключевые слова».

<table_name>

Задаёт идентификатор (имя) таблицы, который должен быть уникальным в пределах базы данных.

Идентификатор должен начинаться с буквы (или символа любого языка, если включена поддержка имён в Unicode) и не может содержать пробелы или специальные символы, если вся строка идентификатора не заключена в обратные кавычки (например, My Object).

В качестве идентификатора нельзя использовать зарезервированные ключевые слова.

Подробнее см. в разделах «Требования к идентификаторам» и «Зарезервированные ключевые слова».

Необязательные параметры​

<partition_list>

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

Идентификатор должен начинаться с буквы (или символа любого языка, если включена поддержка имён в Unicode) и не может содержать пробелы или специальные символы, если вся строка идентификатора не заключена в обратные кавычки (например, My Object).

В качестве идентификатора нельзя использовать зарезервированные ключевые слова.

Подробнее см. в разделах «Требования к идентификаторам» и «Зарезервированные ключевые слова».

Требования к правам доступа​

Пользователи, выполняющие эту команду SQL, должны обладать как минимум следующими привилегиями:

ПривилегияОбъектПримечания
ALTER_PRIVТаблицаBUILD INDEX — это операция ALTER над таблицей

Примечания по использованию​

  • В настоящее время команда применима только к инвертированным индексам; другие индексы, например BloomFilter, не поддерживаются.
  • В настоящее время команда применима только в режиме с совмещением вычислений и хранения; режим с разделением вычислений и хранения не поддерживается.
  • Ход выполнения BUILD INDEX можно просмотреть с помощью SHOW BUILD INDEX

Примеры​

  • Построить индекс index1 для всей таблицы table1.

    BUILD INDEX index1 ON table1
  • Построить индекс index1 для разделов p1 и p2 таблицы table1.

    BUILD INDEX index1 ON table1 PARTITION(p1, p2)