[英]sql server round
select round((cast(56/3 AS DECIMAL (4,2))),1)
顯示的是18個輸出而不是19個,實際值為18.66。 我的回合功能不起作用,請幫忙。
您的代碼部分:
CAST( 56/3 AS DECIMAL )
首先評估返回值為18的56/3
。然后將其轉換為十進制,得出18.0。
您需要在除法發生之前強制轉換分子或分母。
round
功能運行良好-只是不使用您認為正確的輸入。
除以數字之前,請轉換整數值之一:
select round(56/convert(DECIMAL (4,2),3),0);
如果不這樣做,則將整數相除,結果為18而不是18.66
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.