我想在SQLserver中实现一个函数,能够将10进制转化为36进制

0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ,能不能实现,特此请教。
比如 135 对应的为3R

--转换函数 
alter   function   fn_10to36   ( 
@i   int 
) 
returns   varchar(30) 
as 
begin 

declare   @r   varchar(30) 
set   @r= ' ' 

declare   @m   int 
declare   @s   int 
set   @s=@i 
while   @s> =36 
begin 
set   @m=@s   %   36 
set   @r=case   when   @m <10   then   cast(@m   as   varchar)   
else   cast(char(ascii( 'A ')+@m-10)   as   varchar)   end+@r 
set   @s=@s/36 
end 
if   @s> 0   or   (@s=0   and   @r= ' ') 
set   @r=case   when   @s <10   then   cast(@s   as   varchar)   
else   cast(char(ascii( 'A ')+@s-10)   as   varchar)   end+@r 
return   @r 
end 

go 

快乐渡过每一天,减肥坚持每一天