ホームページ > データベース > mysql チュートリアル > 複数列の UNIQUE インデックスを作成するにはどうすればよいでしょうか?

複数列の UNIQUE インデックスを作成するにはどうすればよいでしょうか?

PHPz
リリース: 2023-09-02 09:57:05
転載
1173 人が閲覧しました

複数列の UNIQUE インデックスを作成するにはどうすればよいでしょうか?

複数列の UNIQUE インデックスを作成するには、複数の列にインデックス名を指定する必要があります。次の例では、「employee」テーブルの「empid」、「first_name」、「last_name」列に「id_fname_lname」という名前の複数列インデックスを作成します -

mysql> Create UNIQUE INDEX id_fname_lname on employee(empid,first_name,last_name);
Query OK, 0 rows affected (0.41 sec)
Records: 0 Duplicates: 0 Warnings: 0

mysql> describe employee;
+------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+-------+
| empid | int(11) | YES | MUL | NULL | |
| first_name | varchar(20) | YES | | NULL | |
| last_name | varchar(20) | YES | | NULL | |
+------------+-------------+------+-----+---------+-------+
3 rows in set (0.12 sec)
ログイン後にコピー

上記の結果セットよりクエリを実行すると、テーブルに複数のインデックスが定義されていることがわかります。インデックスに関する詳細は忘れて、次のクエリを実行できます -

mysql> Show index from employee\G
*************************** 1. row ***************************
Table: employee
Non_unique: 0
Key_name: id_fname_lname
Seq_in_index: 1
Column_name: empid
Collation: A
Cardinality: 0
Sub_part: NULL
Packed: NULL
Null: YES
Index_type: BTREE
Comment:
Index_comment:
*************************** 2. row ***************************
Table: employee
Non_unique: 0
Key_name: id_fname_lname
Seq_in_index: 2
Column_name: first_name
Collation: A
Cardinality: 0
Sub_part: NULL
Packed: NULL
Null: YES
Index_type: BTREE
Comment:
Index_comment:
*************************** 3. row ***************************
Table: employee
Non_unique: 0
Key_name: id_fname_lname
Seq_in_index: 3
Column_name: last_name
Collation: A
Cardinality: 0
Sub_part: NULL
Packed: NULL
Null: YES
Index_type: BTREE
Comment:
Index_comment:
3 rows in set (0.00 sec)
ログイン後にコピー

上記の結果セットからわかるように、「key_name」フィールドの値は、キーのすべての列で作成したものと同じです。 table 複数列のインデックス。

以上が複数列の UNIQUE インデックスを作成するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート