结论:
mysql一个表中用a,b做联合主键,那么where条件中a的查询走索引,速度快,b的查询不走索引,速度慢。
论证:
先创建表
CREATE TABLE `ab` (
`a` int NOT NULL ,
`b` varchar(255) NOT NULL ,
PRIMARY KEY (`a`, `b`)
);
如果执行 select * from ab where a=1;
explain为
如果执行select * from ab where b=1;
explain为
possible_keys中请注意!primary是哪一个!
另外如果建立表的时候把a和b建立联合主键的顺序对调,那么索引也会对调!