mysql中怎么实现日期加减操作
创始人
2024-12-21 04:42:01
0次

1. MySQL 为日期增加一个时间间隔:date_add()

set @dt = now();

select date_add(@dt, interval 1 day);   - 加1天

select date_add(@dt, interval 1 hour);   -加1小时

select date_add(@dt, interval 1 minute);    - 加1分钟

select date_add(@dt, interval 1 second); -加1秒

select date_add(@dt, interval 1 microsecond);-加1毫秒

select date_add(@dt, interval 1 week);-加1周

select date_add(@dt, interval 1 month);-加1月

select date_add(@dt, interval 1 quarter);-加1季

select date_add(@dt, interval 1 year);-加1年

MySQL adddate(), addtime()函数,可以用date_add() 来替代。下面是date_add() 实现addtime() 功能示例:

> set @dt = '2009-09-09 12:12:33';

mysql>

mysql> select date_add(@dt, interval '01:15:30' hour_second);-加上1小时15分30秒

 date_add(@dt, interval '01:15:30' hour_second)

结果:2009-09-09 13:28:03

mysql> select date_add(@dt, interval '1 01:15:30' day_second);-加1天1小时15分30秒

 date_add(@dt, interval '1 01:15:30' day_second)

 2008-08-10 13:28:03

date_add() 函数,分别为@dt 增加了“1小时15分30秒” 和 “1天1小时15分30秒”

2. MySQL 为日期减去一个时间间隔:date_sub()

mysql> select date_sub('1998-01-01 00:00:00', interval '1 1:1:1' day_second);

 date_sub('1998-01-01 00:00:00', interval '1 1:1:1' day_second)

 www.2cto.com

MySQL date_sub() 日期时间函数 和date_add() 用法一致,不再赘述。另外,MySQL 中还有两个函数subdate(), subtime(),建议,用date_sub() 来替代。

3. MySQL 另类日期函数:period_add(P,N), period_diff(P1,P2)

函数参数“P” 的格式为“YYYYMM” 或者 “YYMM”,第二个参数“N” 表示增加或减去N month(月)。

MySQL period_add(P,N):日期加/减去N月。

mysql> select period_add(200808,2), period_add(20080808,-2)

| period_add(200808,2) | period_add(20080808,-2) |

结果|               200810 |                20080806 |

MySQL period_diff(P1,P2):日期P1-P2,返回N 个月。

mysql> select period_diff(200808, 200801);

 period_diff(200808, 200801)

  结果:7

 MySQL 中,这两个日期函数,一般情况下很少用到。

4. MySQL 日期、时间相减函数:datediff(date1,date2), timediff(time1,time2)

MySQL datediff(date1,date2):两个日期相减date1 date2,返回天数。网站制作学习网整理

select datediff('2008-08-08', '2008-08-01'); - 7

select datediff('2008-08-01', '2008-08-08'); -7

MySQL timediff(time1,time2):两个日期相减time1 time2,返回time 差值。

select timediff('2008-08-08 08:08:08', '2008-08-08 00:00:00');- 08:08:08

select timediff('08:08:08', '00:00:00');                      - 08:08:08

注意:timediff(time1,time2) 函数的两个参数类型必须相同。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...