create function fn_compare(@s varchar(999))
returns sql_variant
as
begin
declare @t table(test_data varchar(100))
declare @i integer, @s1 varchar(100), @m varchar(100)
select @i = charindex(',',@s)
while @i > 0
begin
select @s1 = left(@s, @i - 1), @s = right(@s, len(@s) - @i)
insert into @t values(@s1)
select @i = charindex(',',@s)
end
if len(@s) > 0
insert into @t values(@s)
select @m = max(convert(dec(20,4),test_data)) from @t --根据需要扩大范围,但最高精度不超过38
return @m
end
--调用
--select dbo.fn_compare('1,2,3,4,5,6,999,100,600,10000,1000,111111.444')
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/68303/viewspace-251586/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/68303/viewspace-251586/