索引使用的注意事项

1、不要在列上使用函数和进行运算

2、尽量避免使用 != 或 not in或 <> 等否定操作符

3、尽量避免使用 or 来连接条件

4、MySQL 只能使用一个单列索引,会从多个索引中选择一个限制最为严格的索引。为了提高性能,可以使用复合索引

5、复合索引的最左前缀原则。复合索引遵守“最左前缀”原则,即在查询条件中使用了复合索引的第一个字段,索引才会被使用

6、覆盖索引的好处:如果一个索引包含所有需要的查询的字段的值,直接根据索引的查询结果返回数据,而无需读表,能够极大的提高性能。因此,可以定义一个让索引包含的额外的列,即使这个列对于索引而言是无用的。

7、索引不会包含有NULL值的列,只要列中包含有 NULL 值都将不会被包含在索引中,复合索引中只要有一列含有 NULL值,那么这一列对于此复合索引就是无效的。因此,在数据库设计时,除非有一个很特别的原因使用 NULL 值,不然尽量不要让字段的默认值为 NULL。

8、like 语句的索引失效问题

你可能感兴趣的:(索引使用的注意事项)