索引的优缺点
- 优点:提高数据的检索速度。
- 缺点:索引要占用空间,添加数据的时候要维护索引表
索引的使用原则
- 数据量大的,建立索引才有意义
- 经常被查询的字段上使用索引,用在where子句后面或者连接条件上的字段建立索引
- 增删改频率高的,不建议使用索引
索引失效
- 如果条件中有or ,即使其中有条件带有索引也不会使用索引。
- 模糊查询like 查询条件以百分号 ‘%xxx’ 开头的不会使用索引 , ‘xxx%’ 百分号结尾的可以走索引。
- where语句中使用了不等于 <> , != 符合不会使用索引
- 全表扫描比索引快 , 则不使用索引
- 使用了not in , not exists 不走索引
- 类型错误
创建索引
--单列索引
create index index_name on table_name(filedName);
-- 复合索引
create index index_name on table_name(fieldName1,fieldName2);
-- 查看表中的索引
show index from table_name;
-- 删除索引
drop index index_name on table_name;
-- 查看是否使用索引
explain + sql_query_statements;