MySQL中对字段使用函数导致索引失效

avatar 2021年08月24日17:15:27 8 3573 views
博主分享免费Java教学视频,B站账号:Java刘哥 ,长期提供技术问题解决、项目定制:本站商品点此

MySQL中对字段使用函数导致索引失效的问题其实很常见,大家一般都知道,但是工作中还是有很多人会犯错

比如下面这个例子,查询今天提交的订单

很多同学可能会写上面这种,实际上这种写法导致索引失效,最终全表扫描

-- 索引失效
explain select * from oms_order o where date_format( o.SUBMIT_TIME, '%Y-%m-%d' ) = date_format( NOW( ), '%Y-%m-%d' ) 

-- 索引有效
explain select * from oms_order o where  o.SUBMIT_TIME BETWEEN curdate() AND  DATE_SUB(curdate(),INTERVAL -1 DAY)

  • 微信
  • 交流学习,服务定制
  • weinxin
  • 个人淘宝
  • 店铺名:言曌博客咨询部

  • (部分商品未及时上架淘宝)
avatar

发表评论

avatar 登录者:匿名
匿名评论,评论回复后会有邮件通知

  

已通过评论:2   待审核评论数:0
  1. avatar 岳不群

    文章写的还可以,我基本上看完了,谢谢分享

  2. avatar s

    文章写的还可以,我基本上看完了,谢谢分享