欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-03-09 21:57:03
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...

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得到相减之后的天数

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

timediff(time1,time2):两个时间相减 time1减time2,返回差值。
MySQL运用日期加减,计算前(后)一年的同一周同一天的日期

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));

本文地址:https://blog.csdn.net/skipple11/article/details/108564393

相关标签: mysql