美文网首页工作生活
sql查询之date和date_sub函数

sql查询之date和date_sub函数

作者: ALLIN5 | 来源:发表于2019-07-03 10:52 被阅读0次

curdate()表示当天日期

【备注:如果表示前一天的数据,则不能使用curdate()-1,因为当日期为月初时,curdate()-1 日期就不是上一个月的月末日期】
  • 查询前一天的数据
    表达式:select 字段名 from 表名 where date(日期类型的字段名) = date_sub(curdate(), interval 11 day);
select * from wts_compression_device_register_history where date(device_time) = date_sub(curdate(),interval 1 day) ;
  • 查询前七天的数据(包括昨天)
select * from wts_compression_device_register_history where date(device_time)  >= date_sub(curdate(),interval 7 day)  and  date(device_time) <= date_sub(curdate(), interval 1 day);
  • 查询前一个月的数据(将上述的day改为month)
select  * from wts_compression_device_register_history where date(device_time) >= date_sub(curdate(),interval 1 month)
  • 查询前一年的数据(将上述的month改为year)
select  * from wts_compression_device_register_history where date(device_time) >= date_sub(curdate(),interval 1 year)
  • 查询历时某一天的数据
将date_sub(curdate(), interval 0 day)函数中的curdate()替换换为某一天的日期即可

date_sub('2019-07-01',interval 1 day) 表示 2019-06-30
date_sub('2019-07-01',interval 0 day) 表示 2019-07-01
date_sub('2019-07-01',interval -1 day) 表示 2019-07-02
date_sub('2019-06-30',interval -1 day) 表示 2019-07-01

查询年和月把相应的day进行他替换就好

相关文章

网友评论

    本文标题:sql查询之date和date_sub函数

    本文链接:https://www.haomeiwen.com/subject/qigfhctx.html