TIMESTAMPDIFF与TIMESTAMPADD

今天项目开发的时候遇到了这个需求,所以特意来做一下记录;
本片目录:
数据库时间差函数TIMESTAMPDIFF的使用;
数据库时间段累加函数TIMESTAMPADD的使用;

1. 数据库时间差函数TIMESTAMPDIFF的使用

1 函数作用

TIMESTAMPDIFF( interval , start_datetime_expr1 , end_datetime_expr2 ):使用这个DB函数可以求出两个时间段的间隔;

2 interval作用

其中,interval是指间隔的展示形式。可以是 秒 分钟 小时 或者是天 甚至是月。下面列举一下支持的类型:
	1)FRAC_SECOND。表示间隔是毫秒
	2)SECOND。秒
	3)MINUTE。分钟
	4)HOUR。小时
	5)DAY。天
	6)WEEK。星期
	7)MONTH。月
	8)QUARTER。季度
	9)YEAR。年

3 时间格式

而start_datetime_expr1和end_datetime_expr2是指起始时间和结束时间;
它们俩的格式可以是 ‘%H:%i:%s’ 或者是 ‘%H-%i-%s’ 甚至是 ‘%H/%i/%s’;

4 实例演示

select TIMESTAMPDIFF( FRAC_SECOND , '2012/08/24 12:12:12','2012/08/25 12:12:12' );
select TIMESTAMPDIFF( SECOND , '2012-08-24 12:12:12','2012-08-25 12:12:12' );
select TIMESTAMPDIFF( hour , '2012:08:24 12:12:12','2012:08:25 12:12:12' );

select TIMESTAMPDIFF( DAY , '2012/08/24','2012/08/25' );
select TIMESTAMPDIFF( WEEK , '2012-08-24','2012-08-25' );
select TIMESTAMPDIFF( MONTH , '2012:08:24','2012:08:25' );
注:这些主要是想给大家演示一下时间的格式是多样的。所以它真滴很好用,在求时间差值方面;

2. 数据库时间段累加函数TIMESTAMPADD的使用

1 函数作用

TIMESTAMPADD( interval , int_expr , datetime_expr ):使用这个DB函数可以求出一个起始时间向后累加一个int值后的时间值;

2 interval和上面一致 哈!

3 int_expr

它是指你需要向后延伸的整数值,值的含义由interval来进行限定;

4 datetime_expr和上面的格式一致 哈!

5 实例演示

select timestampadd(hour , 12 , '2012/08/24 12:12:12');
select timestampadd(hour , 12 , '2012-08-24 12:12:12');
select timestampadd(hour , 12 , '2012:08:24 12:12:12');

select timestampadd(hour , 12 , '2012/08/24');
select timestampadd(hour , 12 , '2012-08-24');
select timestampadd(hour , 12 , '2012:08:24');
注:同样,这里的时间格式也是很多样化。所以说它也很好用;
但是有个小现象,就是我们不管使用什么时间格式的数据进行累加结果都只会是2012-08-24 12:00:00这种格式;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值