SQL 计算时间差问题,要精确到天小时分钟.
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 计算时间差问题,要精确到天小时分钟.相关的知识,希望对你有一定的参考价值。
例如:2012年04月05日08:30到2012年04月05日12:00,这两个时间计算时间差,我要让他结果显示为:0天3小时30分钟2012年04月05日08:30到2012年04月08日12:00,这两个时间计算时间差,我要让他结果显示为:3天3小时30分钟
什么数据库啊?
sqlserver
select cast(floor(datediff(minute,时间1,时间2) / 1440) as varchar)+\'天\'+
cast(floor((datediff(minute,时间1,时间2) % 1440)/60) as varchar)+\'小时\'+
cast(((datediff(minute,时间1,时间2))-
(floor(datediff(minute,时间1,时间2) / 1440) *1440)-
(floor((datediff(minute,时间1,时间2) % 1440)/60)*60)) as varchar)+\'分\'
from 表名
刚才测试了一下:结果如下
有问题欢迎追问
参考技术A select datediff(day,GETDATE(),getdate())--天数差select DATEDIFF (HOUR,GETDATE()-2,getdate()) --小时差 值/24,就是天
select DATEDIFF (MINUTE,GETDATE()-2,getdate()) --俩个日期的分钟差,值/24,天数差,余值/60,小时差,余数为分钟。 参考技术B SELEC TDATEDIFF( Second, '2009-8-25 12:15:12', '2009-9-1 7:18:20') --返回相差秒数
SELEC TDATEDIFF( Minute, '2009-9-1 6:15:12', '2009-9-1 7:18:20') --返回相差分钟数
SELEC TDATEDIFF( Day, '2009-8-25 12:15:12','2009-9-1 7:18:20')--返回相差的天数
SELEC TDATEDIFF( Hour, '2009-8-25 12:15:12', '2009-9-1 7:18:20')--返回相差的小时 参考技术C 根本不行
[SQL]SELECT DATEDIFF( Second, '2009-8-25 12:15:12', '2009-9-1 7:18:20')
[Err] 1582 - Incorrect parameter count in the call to native function 'DATEDIFF'
求教:如何计算EXCEL时间差???要精确到分钟或者秒,在线等,谢
比如: A1=20091215142057 (即2009年12月15日14:20:57),
A2=20091215142157,
如何使用公式得出两者之间的时间差?且时间差用秒钟来显示?
即在A3空格显示的答案为:60秒??
求答,不胜感谢!
请按照这样的操作做,应该OK 参考技术A a3=text(a2-a1,"[s]") 参考技术B =TEXT(TEXT(A2,"#-00-00 00\:00\:00")-TEXT(A1,"#-00-00 00\:00\:00"),"[s]秒")
测试通过!
以上是关于SQL 计算时间差问题,要精确到天小时分钟.的主要内容,如果未能解决你的问题,请参考以下文章