“开始”和“结束”列的格式为 Yyyy-mm-dd HH:mm:ss.ms
我想把两者的区别放在一起 HH:mm:ss.ms
格式。我该怎么办?
我的查询如下所示:
select *, convert(time,
Dateadd(s,
Datediff(s, A.Finish, A.Start),
Cast('1900-01-01 00:00:00.000000' as datetime2)
)
) as dif
from (
select *,
dateadd(s,convert(int,left(start,10)),'1970-01-01') as Start,
dateadd(s,convert(int,left(finish,10)),'1970-01-01') as Finish,
from tableB
) A
order by dif asc
我已经在内部查询中将unix时间戳转换为标准格式。运行此命令时,开始日期和开始时间显示为“2019-12-11 15:45:20.000”和“2019-12-12 15:45:17.000”,但我的dif显示为“00:00:03”,这是错误的。
任何帮助都将不胜感激
1条答案
按热度按时间weylhg0b1#
我使用了两个来源来帮助您:
https://www.rodolforodarte.com/2011/05/using-datediff-to-display-hhmmss/
和
将datediff显示为秒(毫秒)
这是我的结果代码:
这里有一个小演示