メインコンテンツまでスキップ
に最終更新

SHOW INDEX

説明​

このステートメントは、テーブルのインデックス情報を表示します。内部テーブルでは、転置インデックスと ANN インデックスのみをサポートします。

Lance Filesystem Catalog のテーブルでは、Lance データセットに記録された論理スカラーインデックスと論理ベクトルインデックスを表示します。値が入る列は Table、Key_name、Seq_in_index、Column_name、Index_type、Properties のみです。Lance REST Catalog はサポートされません。詳しくは、Lance インデックスの確認を参照してください。

Iceberg や Paimon など、その他の外部カタログのテーブルでは、結果は空になります。これらの形式では、代わりにシステムテーブルを通じてテーブルのメタデータを公開します。詳しくは、Iceberg のシステムテーブルとPaimon のシステムテーブルを参照してください。Paimon のインデックスファイルは、システムテーブル table_indexesで確認できます。

構文​

SHOW INDEX [ ES ] FROM [ <db_name>. ] <table_name> [ FROM <db_name> ];

別の構文​

SHOW KEY[ S ] FROM [ <db_name>. ] <table_name> [ FROM <db_name> ];

必須パラメータ​

1. <table_name>: インデックスが属するテーブルの名前。

任意パラメータ​

1. <db_name>: データベース名。省略した場合は、現在のデータベースを使用します。

戻り値​

列名型説明
Tablestringインデックスが属するテーブルの名前。
Non_uniqueintインデックスが一意かどうかを示します。
- 0: 一意インデックス
- 1: 非一意インデックス
Key_namestringインデックスの名前。
Seq_in_indexintインデックス内での列の位置。複数の列で複合インデックスを構成する場合、列の順序を示します。
Column_namestringインデックス対象の列の名前。
Collationstringインデックス列の並び順。
- A: 昇順
- D: 降順。
Cardinalityintインデックス内の一意な値の数。クエリ効率の推定に使用され、値が大きいほどインデックスの選択性とクエリ効率が高くなります。
Sub_partintインデックスに使用する接頭辞の長さ。インデックス列が文字列型の場合、Sub_part は先頭からインデックス化する文字数を表します。
Packedstringインデックスが圧縮されているかどうか。
NullstringNULL 値を許可するかどうか。
- YES: NULL 値を許可
- NO: NULL 値を許可しない
Index_typestringインデックスの種類。
- BTREE: B+ 木インデックス(MySQL のデフォルトの種類)
- HASH: ハッシュインデックス
- RTREE: R 木インデックス
- INVERTED: 転置インデックス(全文検索インデックスなど)
Commentstringインデックスのコメントまたは説明。通常はユーザーが指定したコメントです。
Propertiesstringインデックスの追加プロパティ。

必要な権限​

この SQL コマンドを実行するユーザーには、少なくとも次の権限が必要です。

権限対象備考
SHOW_PRIVデータベース

例​

  • 指定した table_name のインデックスを表示します

     SHOW INDEX FROM example_db.table_name;
  • Lance Catalog テーブルの論理インデックスを表示します

     SHOW INDEX FROM lance_catalog.default.items;