--==============================================
-- 自定义的四舍五入(四舍五入后的所有尾数遇进则进)
-- by 小天使 2015-11-12
-- 使用方法 SELECT dbo.fn_MyRound(4.5445,2)
--==============================================
CREATE FUNCTION [dbo].[fn_MyRound]
(
@val DECIMAL(20,10),--要输入的浮点数
@len INT=2, --四舍五入所要的长度
@alen int=4 --浮点数的小数位数【如果小于(浮点数的小数位数)则截取】
)
RETURNS FLOAT
AS
BEGIN
if @alen<=@len
begin
RETURN CONVERT(FLOAT, round(@val,@len))
end
WHILE @alen>@len
BEGIN
SET @alen=@alen-1
SET @val=round(@val,@alen)
END
RETURN CONVERT(FLOAT, @val)
END