メインコンテンツまでスキップ
バージョン: 4.x

インデックスを構築

説明

テーブル全体またはテーブルパーティションのインデックスを構築します。テーブル名とインデックス名を指定する必要があり、オプションでパーティションリストを指定できます。

構文

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

ここで:

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

必須パラメータ

<index_name>

テーブル内で一意である必要があるインデックスの識別子(名前)を指定します。

識別子は文字で始まる必要があり(unicode名前サポートが有効な場合は任意の言語文字)、識別子文字列全体がバッククォートで囲まれていない限り(例:My Object)、スペースや特殊文字を含めることはできません。

識別子は予約キーワードを使用できません。

詳細については、Identifier Requirements and Reserved Keywordsを参照してください。

<table_name>

データベース内で一意である必要があるテーブルの識別子(名前)を指定します。

識別子は文字で始まる必要があり(unicode名前サポートが有効な場合は任意の言語文字)、識別子文字列全体がバッククォートで囲まれていない限り(例:My Object)、スペースや特殊文字を含めることはできません。

識別子は予約キーワードを使用できません。

詳細については、Identifier Requirements and Reserved Keywordsを参照してください。

オプションパラメータ

<partition_list>

カンマで区切られたパーティション識別子(名前)のリストを指定します。これらはテーブル内で一意である必要があります。

識別子は文字で始まる必要があり(unicode名前サポートが有効な場合は任意の言語文字)、識別子文字列全体がバッククォートで囲まれていない限り(例:My Object)、スペースや特殊文字を含めることはできません。

識別子は予約キーワードを使用できません。

詳細については、Identifier Requirements and Reserved Keywordsを参照してください。

アクセス制御要件

このSQLコマンドを実行するユーザーは、少なくとも以下の権限を持つ必要があります:

権限オブジェクト備考
ALTER_PRIVTableBUILD INDEXはテーブルのALTER操作です

使用上の注意

  • 現在は転置インデックスでのみ有効で、BloomFilterインデックスなどの他のインデックスは有効ではありません。
  • 現在はcompute-storage統合モードでのみ有効で、compute-storage分離モードでは無効です。
  • BUILD INDEXの進行状況はSHOW BUILD INDEXで確認できます

  • テーブル全体table1にインデックスindex1を構築します。

    BUILD INDEX index1 ON table1
  • table1のパーティションp1とp2にインデックスindex1を構築します。

    BUILD INDEX index1 ON table1 PARTITION(p1, p2)