mysql 查询当前时间加减时间

需求:笔者在写接口自动化的时,需要查询当前24小时内的数据来对比接口返回的数据,所有就需要查询当前
时间的前24小时的数据,由于时间具有不确定性,所以没法用精确时间查询,于是就各种百度并且问了
开发大哥,终于解决了!!!


其实,mysql中就有这么2个内置函数,来帮我们解决此类问题:

  • DATE_ADD(date,INTERVAL expr type)
    在指定时间内添加时间
  • DATE_SUB(date,INTERVAL expr type)
    在指定时间内减少时间

语法

  • DATE_ADD(date,INTERVAL expr type)
  • DATE_SUB(date,INTERVAL expr type)
    data:指定开始时间
    expr:时间间隔

type:时间格式参数
MICROSECOND 【毫秒】
SECOND 【秒】
MINUTE 【分钟】
HOUR 【小时】
DAY 【天】
WEEK 【周】
MONTH 【月】
QUARTER 【季度】
YEAR 【年】
SECOND_MICROSECOND 【秒毫秒】
MINUTE_MICROSECOND 【分钟
毫秒】
MINUTE_SECOND 【分钟秒】
HOUR_MICROSECOND 【时
分钟】
HOUR_SECOND 【时秒】
HOUR_MINUTE 【时
分钟】
DAY_MICROSECOND 【天毫秒】
DAY_SECOND 【天
秒】
DAY_MINUTE 【天分钟】
DAY_HOUR 【天
小时】
YEAR_MONTH 【年_月】

例:查询当前时间前24小时
select data_sub(now(),INTERVAL 24 hour)
也可以这样:
select data_add(now(),INTERVAL -24 hour)
所以:
data_sub()和data_add()互为相反

也可以查询某个时间字段的前24小时

  • select * from 表名 where 字段 >= date_add(now(), interval -24 hour);
今天头发又比昨天少了

持续学习中!!!
头秃,头秃,头秃

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容