mysql组合索引like的问题
建表语句 :
CREATE TABLE `t` (
`c1` char(2) NOT NULL DEFAULT '',
`c2` char(2) NOT NULL DEFAULT '',
`c3` char(2) NOT NULL DEFAULT '',
`c4` char(2) NOT NULL DEFAULT '',
`c5` char(2) NOT NULL DEFAULT '',
KEY `test_index` (`c1`,`c2`,`c3`,`c4`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8
insert into `t` (`c1`, `c2`, `c3`, `c4`, `c5`) values('1','2','3','4','5');
insert into `t` (`c1`, `c2`, `c3`, `c4`, `c5`) values('a','c','df','d','f');
insert into `t` (`c1`, `c2`, `c3`, `c4`, `c5`) values('d','x','d','d','x');
insert into `t` (`c1`, `c2`, `c3`, `c4`, `c5`) values('s','s','df','','d');
测试中发现:
EXPLAIN
SELECT * FROM t WHERE c1 = '1' AND c2 = "2" AND c3 LIKE '3%' AND c4 = '2'
这种语句 4列都可以用到索引
这是为啥呢?
我 看《高性能mysql》中说 “如果某个列是范围查询 他后面的列都无法使用索引优化”
求解~~~
CREATE TABLE `t` (
`c1` char(2) NOT NULL DEFAULT '',
`c2` char(2) NOT NULL DEFAULT '',
`c3` char(2) NOT NULL DEFAULT '',
`c4` char(2) NOT NULL DEFAULT '',
`c5` char(2) NOT NULL DEFAULT '',
KEY `test_index` (`c1`,`c2`,`c3`,`c4`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8
insert into `t` (`c1`, `c2`, `c3`, `c4`, `c5`) values('1','2','3','4','5');
insert into `t` (`c1`, `c2`, `c3`, `c4`, `c5`) values('a','c','df','d','f');
insert into `t` (`c1`, `c2`, `c3`, `c4`, `c5`) values('d','x','d','d','x');
insert into `t` (`c1`, `c2`, `c3`, `c4`, `c5`) values('s','s','df','','d');
测试中发现:
EXPLAIN
SELECT * FROM t WHERE c1 = '1' AND c2 = "2" AND c3 LIKE '3%' AND c4 = '2'
这种语句 4列都可以用到索引
这是为啥呢?
我 看《高性能mysql》中说 “如果某个列是范围查询 他后面的列都无法使用索引优化”
求解~~~
...全文
相关推荐
MySQL Hash索引和B-Tree索引的区别
MySQL中的索引是数据库管理系统优化查询性能的关键工具。在MySQL中,常见的索引类型包括B-Tree索引和Hash索引。这两种类型的索引在结构和功能上有着显著的差异,各自具有优缺点。
ElasticSearch与MySQL如何搭配组合使用?
**全表扫描**:对于"like '%小米手机%'"这样的模糊查询,MySQL 不会使用索引,必须进行全表扫描,对大数据量尤为低效。4.
MySQL索引类型详解[源码]
最后,在使用LIKE语句进行模糊匹配时,若以通配符开始,则无法利用索引,这时可以采用全文索引或者对数据进行合理的设计以适应模糊查询。索引是数据库管理系统的强大工具,但使用不当也会导致性能问题。
MySQL索引全面解析[项目代码]
=)操作符、使用like操作符但模式以通配符(% 或 _)开头、在索引列上进行计算或类型转换等。MySQL索引的具体应用包括为提高查询效率创建单一索引和组合索引,以及针对特定查询模式优化索引。
mysql高性能索引查询(查询性能问题、索引使用原则、索引创建、索引的优点缺点).docx
### MySQL高性能索引详解#### 一、高性能索引##### 1、查询性能问题在MySQL数据库的应用过程中,查询性能问题是常见的瓶颈之一。


