没有遵守最左前缀法则(联合索引中,左边的值未确认,无法使用此索引)
SQL语句中使用计算、函数、类型转换等
SQL语句中索引条件在范围查询右边
使用!=或者<>也会令索引失效
is null 可以使用索引,而is not null无法使用索引
like以%开头,索引会失效(页面搜索严禁左模糊或者全模糊,如果需要请走搜索引擎来解决。)
OR 前后存在非索引的列,索引失效
数据库和表的字符集统一使用utf8mb4(统一使用utf8mb4( 5.5.3版本以上支持)兼容性更好,统一字符集可以避免由于字符集转换产生的乱码。不同的 字符集 进行比较前需要进行 转换 会造成索引失效。)