在我的select语句的一部分中,我想将值四舍五入到两位小数。 select有一个乘法,我取一列的值并乘以另一列并除以100.我希望这个值只返回两个小数位但似乎没有任何工作正常。这是我到目前为止所尝试的内容:
SELECT
a.Rate AS 'Rate'
,a.LoI AS 'Liability'
---------------------------------------------------
---- Tried Each Of These Seperately ---------------
---------------------------------------------------
CAST(a.Rate * a.LoI / 100, money) AS 'Premium'
ROUND(a.Rate * a.LoI / 100,2) AS 'Premium'
CAST((A.Rate * a.LoI / 100), money) AS 'Premium'
CONVERT(A.Rate * a.LoI / 100, money) AS 'Premium'
FROM tblAspecs a
a.Rate是数据类型Decimal(10,2)
a.LoI的数据类型为bigint
我正在使用Microsoft SQL Server Management Studio 2010。
答案 0 :(得分:2)
选择强制转换((123.456 * 2/100)为十进制(38,2))
对我有用:)但那可能不是你想要的?
所以我想你可以试试:
SELECT
a.Rate AS 'Rate'
,a.LoI AS 'Liability'
,CAST((a.Rate * a.LoI / 100) AS decimal(38,2)) 'Premium' FROM tblAspecs a