组合索引表示在创建的索引中,包含数据表中的多个字段或列。MySQL中,同样支持在一张数据表中创建多个组合索引。在使用组合索引查询数据时,MySQL支持最左匹配原则。
例如,创建数据表t6,并为数据表中的t_no、t_name和t_department_id字段创建复合索引。
- mysql> CREATE TABLE t6 (
- -> id INT NOT NULL,
- -> t_no VARCHAR(32) NOT NULL DEFAULT '',
- -> t_name VARCHAR(30) NOT NULL DEFAULT '',
- -> t_department_id INT NOT NULL DEFAULT 0,
- -> INDEX no_name_department_index(t_no, t_name, t_department_id)
- -> );
- Query OK, 0 rows affected (0.12 sec)
SQL语句执行成功,查看t6数据表的表结构信息。
- mysql> SHOW CREATE TABLE t6 \G
- *************************** 1. row ***************************
- Table: t6
- Create Table: CREATE TABLE `t6` (
- `id` int(11) NOT NULL,
- `t_no` varchar(32) NOT NULL DEFAULT '',
- `t_n