根據進舍位或四捨五入來求值

2021-09-07 08:28:38 字數 1244 閱讀 4582

/*

***************************************

program id: fun_getvaluebyroundmode

purpose   : 根據進舍位或四捨五入來求值

author    : jesse

date      : 2011.02.14

***************************************

*/go

--建立函式

create function dbo.fun_getvaluebyroundmode

(@value decimal(18,6),    --需進行運算的值

@bit int,                --小數字數

@roundmode char(1))      --求值方式:-四捨五入、-捨去、-進製

returns decimal(18,6)

asbegin

declare @result decimal(18,6)

set @value=isnull(@value,0)

if @roundmode='1'         --捨去

select @result=round(@value,@bit,1)

else if @roundmode='2'    --進製

begin

if @value>round(@value,@bit,1)    --確保在有尾數的情況下才進製

select @result=round(@value,@bit,1)+1.0/power(10,@bit)

else

select @result=round(@value,@bit,1)

endelse

select @result=round(@value,@bit)

return isnull(@result,0)

end  

--測試示例

select dbo.fun_getvaluebyroundmode(9.82458,3,'0')

select dbo.fun_getvaluebyroundmode(9.82458,3,'1')

select dbo.fun_getvaluebyroundmode(9.82458,3,'2')

--執行結果

/*9.825000

9.824000

9.825000

*/

葉子函式分享三十三 根據進舍位或四捨五入來求值

program id fun getvaluebyroundmode purpose 根據進舍位或四捨五入來求值 author jesse date 2011.02.14 go 建立函式 create function dbo.fun getvaluebyroundmode value decima...

qt的四捨五入 Qt(C )四捨五入

qt現在是四捨六入五成雙,要想四捨五入得自己想辦法,實現如下 include include double c1 3.435 double c2 3.445 double c3 3.4351 double c4 3.4451 double c5 3.445 qdebug qdebug qdebug ...

mysql 金額 四捨五入 mysql四捨五入

雲資料庫 mysql 雲資料庫 rds for mysql 是穩定可靠 可彈性伸縮的雲資料庫服務。通過雲資料庫能夠讓您幾分鐘內完成資料庫部署。雲端完全託管,讓您專注於應用程式開發,無需為資料庫運維煩惱 低至 0.24 小時起,買1年83折 雲資料庫mysql 雲資料庫 rds for mysql 是...