我将用户输入的时间节省为45分钟为75分钟,然后在向用户显示数据时,我需要将其转换回45分钟。但是它是一个浮点列,我正在尝试使用以下t-sql语句将其转换回来:
UPDATE #T1
SET #T1.HOURS = ( CONVERT(TIME, DATEADD(mi,(#T1.Hours * 60 ), '00:00')) )
WHERE #T1.HOURS <= 24
但它给我发了以下错误:
Operand type clash: time is incompatible with float
我还尝试使用以下函数将#Ti.Hours值转换为字符串
STR(#T1.Hours, 18,2)
但抛出的错误仍然相同
有人可以帮我解决这个问题吗?
由于
答案 0 :(得分:0)
使用以下内容。
SUBSTRING(T1.HOURS, 0, CHARINDEX('.',T1.HOURS)) + ':' + (SUBSTRING(T1.HOURS,
CHARINDEX('.',
T1.HOURS)
+ 1,
LEN(T1.HOURS)) * 60) / 100
我还必须通过
将T1.Hours转换为字符串 Str(T1.Hours,18,2) and use a LTrim function