问题描述
我有一个 TIME 类型的变量,我需要将这个变量的时间除以 2.
I have a variable of type TIME, I need to divide the time of this variable by 2.
我的 SQL 代码:
DECLARE @TEMPO AS TIME = '01:31:00' SELECT (@TEMPO / 2 ) AS RESULT --the result should be: 00:45:30
SQL Server 但是抛出一个错误:
SQL Server however throws an error:
操作数类型冲突:time 与 int 不兼容
Operand type clash: time is incompatible with int
欢迎任何帮助!
推荐答案
另一种选择是将时间转换为 datetime 再转换为 float,然后除以二.
Just another option is to convert the time to datetime and then to float, and then divide by two.
示例
DECLARE @TEMPO AS TIME = '01:31:00' Select convert(time,convert(datetime,convert(float,convert(datetime,@Tempo))/2))
退货
00:45:30.0000000