MySQL 日期时间加减

1、

now (); 当前具体的日期和时间

curdate (); 当前日期

curtime(); 当前时间

 

日期格式化 select date(time) from exercise.

 

mysql日期相减取小时

TIMESTAMPDIFF(HOUR,a.StartTime,a.EndTime)

 

加减某个时间间隔函数date_add()与date_sub()

date_add('某个日期时间',interval 1 时间种类名);

示例:

select date_add(@dt, interval 1 year);    //加1年
select date_add(@dt, interval 1 month);    //加1月

quarter:季,week:周,day:天,hour:小时,minuter:分钟,second:秒,microsecond:毫秒

注:也可以不用变量,直接加减某个时间,如:select date_add('1998-01-01', interval 1 day);

 

2.日期相减

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. 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) |
+----------------------------------------------------------------+
| 1997-12-30 22:58:59                                            |
+----------------------------------------------------------------+

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

 

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值