5分钟学会MySQL日期区间查询问题

                                                        MySQL日期区间查询问题

一、前言

       在开发中,我们往往会碰到:查询日期区间(时间段)的问题。

           看似很简单的问题,但不经意间是很容易出错的。

           总结如下:

二、问题及解决方案

      

       a.先说下常见的两种查询方式:

          ①. select * from ord_base where create_time >= '2018-08-29' and create_time <= '2018-09-29';

          ②. select * from ord_base where create_time between '2018-08-29' and '2018-09-29';

       结果:

                   程序启动,代码运行,查询结果有数据,第一感觉没有问题,然后提测,结果测试小伙伴一测试,

           问题就出现了,仅接着,bug通过邮件的形式弹出,你一看,bug问题:2018-09-29当天的数据竟然没有查到..

       b.解决方案:

          ①.select * from ord_base where create_time >= '2018-08-29' and create_time <= '2018-09-29 23:59:59';

          ②. select * from ord_base where create_time between '2018-08-29' and '2018-09-29 23:59:59';

             截止日期添加 " %H:%i:%S ",eg:'2018-09-29 23:59:59';

          ③.  select  *  from ord_base

                 where 1= 1

                     and date_format(create_time,'%Y-%m-%d') >= '2018-08-29'

                     and date_format(create_time,'%Y-%m-%d') <= '2018-09-29'

                 使用 date_format(xx,xx)函数。

                 

                       

                             Now ~ ~ ~写到这里,就写完了,如果有幸帮助到你,请记得关注我,共同一起见证我们的成长

小结

谢谢观赏,我叫猿医生。

猿友推荐:正在奔跑的程序猿

猜你喜欢

转载自blog.csdn.net/qq_42175986/article/details/82803278
今日推荐