if @next>0
begin
set @flag=1
break
end
end
set @j+=1
end
--如果下一位大于0
if @flag=1
begin
set @savePard='0.'+substring(@decimalPart,1,@j)
set @next=substring(@decimalPart,@j+1,1)
if @next>5
set @result=@savePard+@power
else set @result=@savePard
end
else
begin
set @savePard='0.'+substring(@decimalPart,1,@decimalPlace)
set @result=@savePard
end
end
else if @current=0 and @decimalPartC>0
begin
set @savePard='0.'+substring(@decimalPart,1,@decimalPlace)
set @result=@savePard
end
end
end
else --如果处理值是大于等于1的值
begin
if @next>=5
begin
while @j<=@decimalPlace
begin
set @power=@power*0.1
set @j+=1
end
set @savePard='0.'+substring(@decimalPart,1,@decimalPlace)
set @result=@integerPart+@savePard+@power
end
else
begin
set @savePard='0.'+substring(@decimalPart,1,@decimalPlace)
set @result=@integerPart+@savePard
end
end
--小数点位数
set @j=len(@result)-@index
--去除后面多余的0
while @decimalPlace<@j and right(@result,1)='0'
begin
set @result=left(@result,len(@result)-1)
set @j=len(substring(@result,@index+1,len(@result)-@index))
end
if left(@result,len(@result))='.'
set @result+='0'
end
else --如果没有小数位
begin
set @result+='.'
declare @i int=1
while @i<= @decimalPlace
begin
set @result+='0'
set @i+=1
end
end
end
else set @result=@value
return @result
end