数据库教程:Mysql根据时间查询日期的优化技巧

例如查询昨日新注册用户,写法有如下两种: explain select * from chess_user u where date_format(u.regi

例如查询昨日新注册用户,写法有如下两种:

  explain  select * from chess_user u where date_format(u.register_time,'%y-%m-%d')='2018-01-25';  explain  select * from chess_user u where u.register_time between '2018-01-25 00:00:00' and '2018-01-25 23:59:59';

register_time字段是datetime类型,转换为日期再匹配,需要查询出所有行进行过滤。而第二种写法,可以利用在register_time字段上建立索引,查询极快!

Mysql根据时间查询日期的优化技巧Mysql根据时间查询日期的优化技巧

附上日期转换函数

   declare yt varchar(10); #昨天   declare yt_bt varchar(19); #昨天开始时间   declare yt_et varchar(19); #昨天结束时间   #设置变量     set yt=date_format(date_add(now(),interval -1 day),'%y-%m-%d');   set yt_bt=date_format(date_add(now(),interval -1 day),'%y-%m-%d 00:00:00');   set yt_et=date_format(date_add(now(),interval -1 day),'%y-%m-%d 23:59:59');

总结

以上所述是小编给大家介绍的mysql根据时间查询日期的优化技巧,希望对大家有所帮助

需要了解更多数据库技术:Mysql根据时间查询日期的优化技巧,都可以关注数据库技术分享栏目—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/dtteaching/828093.html

(0)
上一篇 2021年9月18日
下一篇 2021年9月18日

精彩推荐