select (cast(datediff(minute,'1900-01-01 07:03:00.000' ,'1900-01-01 10:35:00.000')
as decimal(18,4))/60)
即使小数位设置为 4,它也会返回 3.5333333 而不是 3.5333
请帮我返回 3.5333(小数点后 4 位)
select (cast(datediff(minute,'1900-01-01 07:03:00.000' ,'1900-01-01 10:35:00.000')
as decimal(18,4))/60)
即使小数位设置为 4,它也会返回 3.5333333 而不是 3.5333
请帮我返回 3.5333(小数点后 4 位)
将 /60 放入演员表并将其更改为 60.0 以获得小数。
select (cast(datediff(minute,'1900-01-01 07:03:00.000' ,'1900-01-01 10:35:00.000')/60.0
as decimal(18,4)))
您需要在铸造之前进行除法:
select
cast(datediff(minute, '1900-01-01 07:03:00.000', '1900-01-01 10:35:00.000') / 60.0
as decimal(18,4))
然后你得到:
3.5333
转换为decimal(18,4)
然后除以 60 排序“无效”您的格式 - SQL Server 将再次显示除以 60 的所有数字精度......