mysql では、SHOW INDEX ステートメントを使用して、インデックスが存在するかどうかを確認できます。このステートメントは、テーブルに作成されたインデックスを表示できます。インデックスが存在する場合は、結果が表示されます。構文は「SHOW」です。 INDEX FROM テーブル名 FROM データベース名 ".
このチュートリアルの動作環境: Windows10 システム、mysql8.0.22 バージョン、Dell G3 コンピューター。
インデックスの作成が完了したら、SQL ステートメントを使用して既存のインデックスを表示できます。 MySQL では、SHOW INDEX ステートメントを使用して、テーブルに作成されたインデックスを表示できます。
インデックスを表示するための構文形式は次のとおりです:
SHOW INDEX FROM <表名> [ FROM <数据库名>]
構文の説明は次のとおりです:
: データ テーブルの名前を指定します。インデックスのために表示する必要があります。
: インデックスを参照するデータテーブルが存在するデータベースを指定します(省略可能)。たとえば、SHOW INDEX FROM Student FROM test; ステートメントは、test データベース内の Student データ テーブルのインデックスを表示することを意味します。
例
SHOW INDEX ステートメントを使用して、「MySQL インデックスの作成」セクションの tb_stu_info2 データ テーブルのインデックス情報を表示します。SQL ステートメントと実行結果は次のとおりです。
拡張知識:
主なパラメータについては次のように説明します。
Table は、データ テーブルを表します。インデックス名を作成します。ここでは tb_stu_info2 データ テーブルを示します。
Non_unique は、インデックスが一意であるかどうかを示します。一意のインデックスではない場合、この列の値は 1 になり、一意のインデックスである場合、この列の値は 0 になります。
Key_name はインデックスの名前を表します。
Seq_in_index は、インデックス内の列の位置を示します。インデックスが単一列の場合、この列の値は 1 です。インデックスが結合インデックスの場合、値は 1 です。この列は各列に対して 1 であり、インデックス定義での順序です。
Column_name は、インデックスを定義する列フィールドを表します。
照合順序は、インデックスに列が格納される順序を示します。 MySQL では、値 "A" (昇順) が昇順で表示されます。NULL と表示された場合、分類されていないことを意味します。
カーディナリティ インデックス内の一意の値の数の推定値。カーディナリティは整数として保存される統計に対してカウントされるため、小さなテーブルの場合でも値が正確である必要はありません。カーディナリティが大きいほど、MySQL が結合を行うときにインデックスを使用する可能性が高くなります。
Sub_part は、列内のインデックス付き文字の数を表します。列に部分的にのみインデックスが作成されている場合、列の値はインデックスが作成されている文字数になります。列全体にインデックスが作成されている場合、列の値は NULL になります。
Packed は、キーワードがどのようにパックされるかを示します。圧縮されていない場合、値は NULL になります。
Null は、インデックス列に NULL が含まれるかどうかを表示するために使用されます。列に NULL が含まれる場合、その列の値は YES になります。そうでない場合、この列の値は NO になります。
Index_type は、インデックスで使用されるタイプとメソッド (BTREE、FULLTEXT、HASH、RTREE) を表示します。
コメント コメントを表示します。
推奨学習: mysql ビデオ チュートリアル
以上がmysqlにインデックスが存在するかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。