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

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

PHPz
PHPz転載
2023-09-02 09:57:051100ブラウズ

複数列の 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 までご連絡ください。