我需要把分钟转换成小时,四舍五入到小数点后两位。我还需要只显示小数点后最多两个数字。如果分钟是650,那么小时应该是10.83。

以下是我目前所了解到的:

Select round(Minutes/60.0,2) from ....

但是在这种情况下,如果我的分钟是630小时是10500万。但我只希望它是10.50(四舍五入后)。我该如何做到这一点?


当前回答

这招对我很管用:

SELECT FORMAT(Minutes/60.0, '0.00')

其他回答

以下查询是有用和简单的-

declare @floatExchRate float;
set @floatExchRate=(select convert(decimal(10, 2), 0.2548712))
select  @floatExchRate

输出值为0.25。

您可以将结果转换为数值(x,2)。其中x <= 38。

select
    round(630/60.0,2),
    cast(round(630/60.0,2) as numeric(36,2))

返回

10.500000    10.50
CAST(QuantityLevel AS NUMERIC(18,2))

试试这个:

    SELECT CAST(ROUND([Amount 1]/60,2) AS DECIMAL(10,2)) as TOTAL

四舍五入到小数点后x位:

SET @Result = CEILING(@Value * POWER(10, @Decimals)) / POWER(10, @Decimals)

其中@Value是要四舍五入的项的值,@Decimals是小数点后的位数,例如,在本例中是两位。