MySQL运用日期加减,计算前(后)一年的同一周同一天的日期

MySQL运用日期加减,计算前(后)一年的同一周同一天的日期
1.准备知识点
(1)MySQL 日期时间加减
now (); 当前具体的日期和时间
curdate (); 当前日期
curtime(); 当前时间
(2)MySQL加减某个时间间隔
加减某个时间间隔函数date_add()与date_sub()
date_add(‘某个日期时间’,interval 1 时间种类名);
例:select date_add(curdate(), interval 1 year); //加1年
select date_add(curdate(), interval 1 month); //加1月
select date_add(curdate(), interval 1 day); //加1天
其中:quarter:季,week:周,day:天,hour:小时,minuter:分钟,second:秒,microsecond:毫秒
说明:也可以不用变量,对某个时间进行直接加减
例:select date_add(‘1998-01-01’, interval 1 day);
(3)日期相减
datediff(date1,date2):两个日期相减,date1减去date2得到相减之后的天数

在这里插入图片描述

timediff(time1,time2):两个时间相减 time1减time2,返回差值。
在这里插入图片描述

select timediff(‘2019-06-03 12:30:00’, ‘2019-06-03 12:29:30’);
等同于select timediff(‘12:30:00’, ‘12:29:30’);

2.计算一年前的同一周某天的日期
思路:365/7=52.14周,所以,用当前日期减去527=364天,即为前一年的同一周某天的日期,如下:
select date_sub(curdate(), interval 364 day) //当天日期减去52
7
所以应用到具体例子可以灵活处理,例如,查询上年同一周同一日的订单语句:
select * from order_table where createTime>=(select date_sub(curdate(), interval 364 day)) and createTime <(select date_sub(curdate(), interval 363 day));

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值