为了账号安全,请及时绑定邮箱和手机立即绑定

MySQL 请问这两条语句谁更快一点

MySQL 请问这两条语句谁更快一点

慕少森 2019-03-12 19:01:58
select * from qs_exam_info where TRANS_DATE LIKE '2018-08-18%'select * from qs_exam_info where date(TRANS_DATE) = '20180818'数据库里面TRANS_DATE是按2018-10-16 00:14:17这样的格式存储的
查看完整描述

2 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

如果 TRANS_DATE 为 varchar/char 类型,且该字段有索引,那么大部分情况下第一句比第二句更快

如果 TRANS_DATE 为 timestamp/datetime 类型,两句都用不到索引,全表扫描,所以效率差不多


查看完整回答
反对 回复 2019-03-12
?
千巷猫影

TA贡献1829条经验 获得超7个赞

不妨自己试试看结果,
一般来说, %后置的like会走索引, 而对条件字段使用函数不走索引.

没有索引的话, 对查询条件执行函数操作也会增加耗时.


查看完整回答
反对 回复 2019-03-12
  • 2 回答
  • 0 关注
  • 434 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信