--参数描述:@Hex10 被转换10进制数字
--测试方法:SELECT [dbo].[ConvertHex10To36](17122394)
CREATE FUNCTION [dbo].[ConvertHex10To36]
(@Hex10 INT)
RETURNS VARCHAR(100)
AS
--DECLARE @Hex10 INT SET @Hex10=17122394 --注释AS(包括AS)以上所有行,将代码最后的RETURN换成PRINT,并设该行为断点,按F11开始调试
BEGIN
DECLARE @StrHex36 VARCHAR(100)--返回36进制表示的结果
DECLARE @Remainder INT--余数
DECLARE @Base36 VARCHAR(1)
SET @Remainder=0
SET @StrHex36=''
WHILE @Hex10>=36 --
BEGIN
SET @Remainder=@Hex10%36
SET @Hex10=@Hex10/36
SET @Base36=SUBSTRING('0123456789ABCDEFGHIJKLNMOPQRSTUVWXYZ',@Remainder+1,1)
SET @StrHex36=@Base36+@StrHex36
END
SET @Remainder=@Hex10%36
SET @Base36=SUBSTRING('0123456789ABCDEFGHIJKLNMOPQRSTUVWXYZ',@Remainder+1,1)
SET @StrHex36=@Base36+@StrHex36
--PRINT @StrHex36
RETURN @StrHex36
END