我已经花了一天时间寻找合适的SQL脚本,以获得2个varchar时间的差异。
以下是包含每个值的varchar列:
所以它会是这样的:ProcSchedTime - PtEntersRoomTime = 221(分钟 ) 我想结果将是221分钟,而不是389。
SQL 2005在这里。
我很抱歉这个混乱。
拜托,谢谢!
答案 0 :(得分:1)
您可以将其设置为日期时间,将其投射到日期时间,然后使用DateDiff
SELECT DATEDIFF(MINUTE,cast(STUFF('1319', 3, 0, ':') as datetime) , cast(STUFF('0930', 3, 0, ':') as datetime))
STUFF功能只是在中间添加一个冒号。
答案 1 :(得分:0)
获得分钟差异:
(13 - 09)* 60 +(19 - 30)
select (left(varchartime1,
2
) - left(varchartime2,
2
)
) * 60 + (right(varchartime1,
2
) - right(varchartime2,
2
)
)
希望它不会抛出类型错误
答案 2 :(得分:0)
这将从表中获取字段
.apply