mysql添加索引反而速度变慢的问题

 更新时间:2024年01月27日 15:33:25   作者:Aoeding  
这篇文章主要介绍了mysql添加索引反而速度变慢的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

mysql添加索引反而速度变慢

索引失效几种情况

1.使用in、not in,会导致索引失效

  • 失效的原因和 Mysql 的版本以及表中的数据量有关系
  • 在 8.0 之后的版本是走索引的

2.or 分割的条件

如果 or 左边的条件存在索引,而右边的条件没有索引,不走索引

  • 因为 OR 的含义就是两个只要满足一个即可
  • 因此只有一个条件列进行了索引是没有意义的
  • 只要有条件列没有进行索引
  • 就会进行全表扫描
  • 因此索引的条件列也会失效

3.索引字段不是联合索引字段的最左字段

4.like 使用了 ‘%’模糊匹配

5.被索引字段使用了内置函数

  • 使用了SUM(), MIN(), MAX(), COUNT(), and so forth

6.被索引字段使用了表达式计算

7.字段类型不匹配导致的索引失效

mysql添加索引语句

添加PRIMARY KEY(主键索引) 

mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 

添加UNIQUE(唯一索引) 

mysql>ALTER TABLE `table_name` ADD UNIQUE ( 
`column` 
) 

添加INDEX(普通索引) 

mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column` ) 

添加FULLTEXT(全文索引) 

mysql>ALTER TABLE `table_name` ADD FULLTEXT ( `column`) 

添加多列索引 

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

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

最新评论