すべてのプロダクト
Search
ドキュメントセンター

PolarDB:SHOW INDEX

最終更新日:Mar 29, 2026

SHOW INDEX は、PolarDB-X 1.0 のテーブルのインデックス情報を返します。これには、ローカルセカンダリインデックス (LSIs) およびグローバルセカンダリインデックス (GSIs) が含まれます。SHOW INDEXES および SHOW KEYS は、このステートメントのエイリアスです。

構文

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

mysql> SHOW INDEX FROM t_order;

出力:

+---------+------------+-----------+--------------+----------------+-----------+-------------+----------+--------+------+------------+----------+---------------+
| TABLE   | NON_UNIQUE | KEY_NAME  | SEQ_IN_INDEX | COLUMN_NAME    | COLLATION | CARDINALITY | SUB_PART | PACKED | NULL | INDEX_TYPE | COMMENT  | INDEX_COMMENT |
+---------+------------+-----------+--------------+----------------+-----------+-------------+----------+--------+------+------------+----------+---------------+
| t_order |          0 | PRIMARY   |            1 | id             | A         |           0 |     NULL | NULL   |      | BTREE      |          |               |
| t_order |          1 | l_i_order |            1 | order_id       | A         |           0 |     NULL | NULL   | YES  | BTREE      |          |               |
| t_order |          0 | g_i_buyer |            1 | buyer_id       | NULL      |           0 |     NULL | NULL   | YES  | GLOBAL     | INDEX    |               |
| t_order |          1 | g_i_buyer |            2 | id             | NULL      |           0 |     NULL | NULL   |      | GLOBAL     | COVERING |               |
| t_order |          1 | g_i_buyer |            3 | order_id       | NULL      |           0 |     NULL | NULL   | YES  | GLOBAL     | COVERING |               |
| t_order |          1 | g_i_buyer |            4 | order_snapshot | NULL      |           0 |     NULL | NULL   | YES  | GLOBAL     | COVERING |               |
+---------+------------+-----------+--------------+----------------+-----------+-------------+----------+--------+------+------------+----------+---------------+
6 rows in set (0.01 sec)

各行を垂直に表示するには (テーブルに多くの列がある場合に便利です)、\G を追加します。

mysql> SHOW INDEX FROM t_order\G
*************************** 1. row ***************************
        TABLE: t_order
   NON_UNIQUE: 0
     KEY_NAME: PRIMARY
 SEQ_IN_INDEX: 1
  COLUMN_NAME: id
    COLLATION: A
  CARDINALITY: 0
     SUB_PART: NULL
       PACKED: NULL
         NULL:
   INDEX_TYPE: BTREE
      COMMENT:
INDEX_COMMENT:
...
6 rows in set (0.01 sec)

出力列

説明
TABLEテーブルの名前。
NON_UNIQUEインデックスが重複値を許可するかどうか。1 は重複が許可されること(非一意インデックス)を意味し、0 は各値が一意である必要があることを意味します。
KEY_NAMEインデックスの名前。
SEQ_IN_INDEXインデックス内の列の位置。 1 から始まります。
COLUMN_NAMEインデックスが作成された列の名前。
COLLATIONインデックス内の列のソート順。有効な値:A(昇順)、D(降順)、NULL(ソートなし)。
CARDINALITYインデックス内の推定される一意の値の数。
SUB_PARTインデックスのプレフィックス長(文字数)。NULL は列全体がインデックス対象であることを意味します。
PACKEDキー値の圧縮方法。NULL はキーが圧縮されていないことを意味します。
NULL列に NULL 値を含めることができるかどうか。YES の場合は含めることができ、空白の場合は含められません。
INDEX_TYPEインデックスの構造。有効な値:BTREEHASHNULL(未指定)。
COMMENTこの行がインデックス内で果たすロール。NULL または空白はローカルインデックスを示します。GSI の場合、INDEX はインデックスキー列を識別し、COVERING はカバリング列(プライマリテーブルへの再参照を回避するために GSI 内に格納される追加列)を識別します。
INDEX_COMMENTインデックス作成時に指定された追加のコメント。

関連項目