微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql-server – SQL – 秒到日,小时,分钟,秒

Possible Duplicate:
07000

我有一个查询,需要以日,小时,分钟,秒格式返回第二个.

下面的代码在不到一天时工作正常,但是当秒的值大于一天时不起作用

PRINT Convert(VarChar,DateAdd(S,86400,0),108)

86400正好是一天,它返回00:00:00

有人可以修改它并向我显示这样的结果

1:00:00:00.

谢谢

解决方法

这个怎么样:
declare @days int,@dt1 smalldatetime = '2012-03-25 03:24:16',@dt2 smalldatetime = getdate()

set @days = datediff (s,@dt1,@dt2)


SELECT convert(char(10),@days / (60 * 60 * 24)) + ':'
+ convert(char(10),dateadd(s,@days,convert(datetime2,'0001-01-01')),108)

Result -- 170:20:40:00

SQL Fiddle with Demo

原文地址:https://www.jb51.cc/mssql/84426.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐