今天来讲讲MySQL索引的相关问题,谈到索引,其实算是有个非常有深度的问题,本人才疏学浅,能力有限,理解不当之处,请各位大佬批评指正!不胜感激;
言归正转,回到今天要说的MYSQL索引最左匹配原则问题;
测试表结构,有三个字段,分别是id,name,cid
CREATE TABLE `stu` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
`cid` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `idx_name_cid` (`name`,`cid`)
);
索引方面:id是主键,(name,cid)是一个多列复合索引。
下面是有疑问的两个查询:
explain select * from stu where cid=1001;
explain select * from stu where cid=1001 and name='wjq1';