mysql的索引可以分为单列索引和多列索引,单列索引,请参考:添加mysql索引的3条原则
mysql可以为多个列创建一个索引,最多可以16列,多列索引可以视为包含通过连接索引列的值而创建值的排序数组。mysql多列索引适用场合:当你在where子句中为索引的第1个列指定已知的参数时,查询很快,即使你没有指定其它列的值,这里的其他列是多列索引里面,指定的其他列。
一,创建测试表index_test
mysql> CREATE TABLE `index_test` (
-> `id` int(11) NOT NULL auto_increment,
-> `user_id` int(11) NOT NULL,
-> `username` varchar(20) NOT NULL,
-> PRIMARY KEY (`id`)
-> ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
mysql可以为多个列创建一个索引,最多可以16列,多列索引可以视为包含通过连接索引列的值而创建值的排序数组。mysql多列索引适用场合:当你在where子句中为索引的第1个列指定已知的参数时,查询很快,即使你没有指定其它列的值,这里的其他列是多列索引里面,指定的其他列。
一,创建测试表index_test
mysql> CREATE TABLE `index_test` (
-> `id` int(11) NOT NULL auto_increment,
-> `user_id` int(11) NOT NULL,
-> `username` varchar(20) NOT NULL,
-> PRIMARY KEY (`id`)
-> ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Query OK, 0 rows affected (0.08 sec)
二,创建多列索引