MySQL创建组合索引

大家都知道索引是用来优化的主要因素,对于少量数据索引的影响并不大,对于几十万或百万级别以上数据的时候,单列索引的性能也不是很理想,组合索引可以大大的减少开销。

一、创建组合索引的方法

1、sql语句:

ALTER TABLE `table_name` ADD INDEX index_name (`column1`,`column2`,`column3`);

table_name:需要建立组合索引的表名;

index_name:组合索引的名字;

column1...:创建组合索引的列;

2、Navicat:

选择表---右键点击设计表---索引---添加索引---栏位右边三个点---选择多列---确定---选择索引类型和方法---设置索引名---保存;


二、使用规则

组合索引是按照 最佳左匹配规则 ;也就是当查询条件中带有组合索引的最左侧列条件生效。

比如当按照name、num、iphone的顺序创建组合索引时;

命中索引的查询方式有(where后的顺序不影响):

1、查询name;

2、查询name、num;

3、查询name、num、iphone;

非命中索引的查询方式有(where后的顺序不影响):

1、查询num;

2、查询iphone;

3、查询num、iphone;

猜你喜欢

转载自blog.csdn.net/weixin_45151960/article/details/129875178