MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む

このページは機械翻訳したものです。

13.7.7.22 SHOW INDEX ステートメント

SHOW [EXTENDED] {INDEX | INDEXES | KEYS}
    {FROM | IN} tbl_name
    [{FROM | IN} db_name]
    [WHERE expr]

SHOW INDEX は、テーブルインデックス情報を返します。 この形式は、ODBC での SQLStatistics 呼び出しの形式に似ています。 このステートメントには、このテーブル内のいずれかのカラムに対する何らかの権限が必要です。

mysql> SHOW INDEX FROM City\G
*************************** 1. row ***************************
        Table: city
   Non_unique: 0
     Key_name: PRIMARY
 Seq_in_index: 1
  Column_name: ID
    Collation: A
  Cardinality: 4188
     Sub_part: NULL
       Packed: NULL
         Null:
   Index_type: BTREE
      Comment:
Index_comment:
      Visible: YES
   Expression: NULL
*************************** 2. row ***************************
        Table: city
   Non_unique: 1
     Key_name: CountryCode
 Seq_in_index: 1
  Column_name: CountryCode
    Collation: A
  Cardinality: 232
     Sub_part: NULL
       Packed: NULL
         Null:
   Index_type: BTREE
      Comment:
Index_comment:
      Visible: YES
   Expression: NULL

tbl_name FROM db_name 構文のかわりに、db_name を使用することもできます。tbl_name。 次の 2 つのステートメントは同等です。

SHOW INDEX FROM mytable FROM mydb;
SHOW INDEX FROM mydb.mytable;

オプションの EXTENDED キーワードを指定すると、MySQL が内部的に使用し、ユーザーがアクセスできない非表示インデックスに関する情報が出力に含まれます。

セクション26.55「SHOW ステートメントの拡張」で説明されているように、WHERE 句を指定すると、より一般的な条件を使用して行を選択できます。

SHOW INDEX は、次のフィールドを返します。

テーブルインデックスに関する情報は、INFORMATION_SCHEMA STATISTICS テーブルからも入手できます。 セクション26.34「INFORMATION_SCHEMA STATISTICS テーブル」を参照してください。 非表示インデックスに関する拡張情報は、SHOW EXTENDED INDEX のみを使用して使用できます。STATISTICS テーブルからは取得できません。

mysqlshow -k db_name tbl_name コマンドを使用してテーブルのインデックスをリストできます。