Mysql 索引无效

索引无效

select * from teacher where id not in (1,3,4);
select * from teacher where teacherName like "%张"
select  * from teacher  where FROM_UNIXTIME(startTeacher) < CURDATE();
  1. 包含 not
  2. like 关键词中前缀 "%**"
  3. 在索引字段上进行 计算,对索引列进行运算,需要建立函数索引.
  4. 最左前缀
    单独引用复合索引非第一位置的索引列.
  5. 使用 join 时,两表的字段类型要相同
  6. is null 条件
    索引有序,null 无序,除非不用null,而用具体的数字
  7. or 左右必须是索引列
  8. end

改良建议

// 计算放到不相干字段(不是索引字段上)
select name from user where create_time < FROM_UNIXTIME(CURDATE());

建议可以考虑使用 Lucene 等全文索引工具来代替频繁的模糊查询。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值