1、单列索引
单列索引:即一个索引只包含单个列
举个例子
1.1、给phone和那么建立索引
create index index_name on tb_qianzhui(name);
create index index_phone on tb_qianzhui(phone);
1.2、查询发现可能的索引有好几个,但是最终选择了phone的索引,会导致没有使用name索引,那么就会出现回表查询
explain select id,phone,name from tb_qianzhui where phone=' 18800801111' and name='黄渤';
那么如何解决呢?使用联合查询
2、联合索引
联合索引:即一个索引包含多个列
create unique index index_user_phone_name on tb_qianzhui(phone,name);
3、总结
再实际应用中,如果出现多条查询条件,考虑针对于查询字段建立索引时,建议建立联合索引,而非单列索引,防止出现回表查询