CREATE TABLE test (
id INT (11) NOT NULL AUTO_INCREMENT,
a VARCHAR (128) DEFAULT NULL,
b VARCHAR (128) DEFAULT NULL,
c VARCHAR (128) DEFAULT NULL,
PRIMARY KEY (id),
KEY `index` (a, b, c)
) ENGINE = INNODB DEFAULT CHARSET = utf8 ;
INSERT INTO test(a,b,c) VALUES('qw','d','ddd'),(2,'rr','a');
EXPLAIN SELECT * FROM test WHERE a=1;-- key_len 1161
EXPLAIN SELECT * FROM test WHERE a=1 AND b >10;-- key_len 1161
EXPLAIN SELECT * FROM test WHERE a=1 AND b>10 AND c = 'ddd';-- key_len 1161
EXPLAIN SELECT * FROM test WHERE a=1 AND c = 'ddd' AND b>10;-- key_len 1161
数据库版本:5.6.51
你是创建了一个索引,还是多个索引呢,一个索引就正常的。
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632