根据进舍位或四舍五入来求值

    技术2022-05-20  51

    /* ********************************************************************************* Program ID: FUN_GetValueByRoundMode Purpose : 根据进舍位或四舍五入来求值 Author : Jesse Date : 2011.02.14 ********************************************************************************* */ Create function dbo.FUN_GetValueByRoundMode(@Value decimal(18,6), --需进行运算的值 @Bit int, --小数位数 @RoundMode char(1)) --求值方式:0-四舍五入、1-舍去、2-进行 Returns decimal(18,6) As begin 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) end else Select @Result=Round(@Value,@Bit) Return Isnull(@Result,0) end /* select dbo.FUN_GetValueByRoundMode(9.82458,3,'0') */

    最新回复(0)