sql 计算时间差得到时分秒。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 计算时间差得到时分秒。相关的知识,希望对你有一定的参考价值。

计算两个时间差 如:2009-11-21 00:00:00和2009-11-24 15:12:24

declare @day int
declare @hour int
declare @min int
declare @sec int
declare @alls int
set @alls=datediff(s,'2009-11-21 00:00:00','2009-11-24 15:12:24')
set @day=@alls/86400
set @hour=(@alls-@day*86400)/3600
set @min=(@alls-@day*86400-@hour*3600)/60
set @sec=@alls-@day*86400-@hour*3600-@min*60
select CAST(@day as varchar(5))+'天'+CAST(@hour as varchar(2))+'小时'+CAST(@min as varchar(2))+'分'+CAST(@sec as varchar(2))+'秒'
参考技术A DateDiff 函数
描述:返回两个日期之间的时间间隔。
语法:DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear>)。
interval 参数可以有以下值:
yyyy (年) 、q (季度) 、m (月) 、y (一年的日数) 、d (日) 、w (一周的日数) 、ww (周) 、h (小时) 、n (分钟) 、s (秒)

时间相减得到时分秒

public function secToTime($times){
$result = ‘00:00:00‘;
if ($times>0) {
$hour = floor($times/3600);
$minute = floor(($times-3600 * $hour)/60);
$second = floor((($times-3600 * $hour) - 60 * $minute) % 60);

$result = $this->len($hour).‘:‘.$this->len($minute).‘:‘.$this->len($second);
}
return $result;
}

public function len($str){
if(strlen($str) == 1){
$time = ‘0‘.$str;
}else{
$time = $str;
}
return $time;
}



















以上是关于sql 计算时间差得到时分秒。的主要内容,如果未能解决你的问题,请参考以下文章

json 得到时分秒为00:00:00,拿不到时分秒 解决办法

SQL语句:取某个日期所在季度的最后一天,精确到时分秒

时间相减得到时分秒

java.sql.Date类型时间获取当前时间,精确到时分秒的方法

sql计算两个时间之间的差,并用时分秒表示

SQL开发实战技巧系列(十六):数据仓库中时间类型操作(初级)日月年时分秒之差及时间间隔计算