我有一个专栏,Col1
,格式为HH:MM:SS
,和一个整数列Col2
。我正在尝试计算Col1 / Col2
在格式中HH:MM:SS
。我怎样才能做到这一点?
我尝试过使用转换函数,但是下面的查询忽略了隐藏的值。
这是我使用的 Convert 语句:
CONVERT(VARCHAR,Col1 / 1920) + ':' + RIGHT('00' + CONVERT(VARCHAR, Col1% 60), 2) AS Time,
我正在使用以下查询来尝试进行除法
select (DateTime),(Col1),(Col2),
cast((Col2 - Col1 ) as int)
/ case when [CallsHandledHalf] = 0 then null
else [Col2] end as [AVG]
from Table
where ValueID ='5122'
and DateTime between '11/01/12 05:00' and '11/30/12 16:30'
假设您正在使用 sql server(2008 或更高版本),也许以下内容可以帮助您解决问题:
-- starting with a string in HH:MM:SS format
declare @s varchar(8)
set @s = '12:00:00'
-- set a divisor
declare @d int
set @d = 2
-- divide the total seconds by the divisor
set @s = convert(time(0), dateadd(second, datediff(second, 0, @s) / @d, 0))
-- output the results '06:00:00'
print @s
请注意,您确实应该将时间值保存在time
首先是数据类型,但允许隐式转换,这样您就可以像这样来回转换。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)