qq_27395891 2017-02-07 05:16 采纳率: 0%
浏览 2313

mysql 时间比较 两种比较为什么有时候一样有时候不一样?

SELECT
sum(amount)
FROM
order
WHERE 1 = 1
AND commit_time >= "2017-01-01 00:00:00"
AND commit_time <= "2017-01-31 23:59:59"


SELECT
sum(amount)
FROM
order
WHERE 1 = 1
and SUBSTR(commit_time,1,10)>= "2017-01-01 00:00:00"
and SUBSTR(commit_time,1,10)<= "2017-01-31 23:59:59"

  • 写回答

4条回答 默认 最新

  • 子 不语 2017-02-07 05:49
    关注

    数据不多,感觉相差不大,只不过是你后面这语句多用了SUBSTR函数而已。
    如果你想再优化的话,可以把commit-time >=" 2017-01-01 00:00:00 " 改成(commit-time >" 2017-01-01 00:00:00 " or commit-time =" 2017-01-01 00:00:00 " )会更快一点。

    评论

报告相同问题?

悬赏问题

  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样