SQL Server中將數字轉為字符

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER FUNCTION [dbo].[FN_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

  

原文地址:https://www.cnblogs.com/wonder223/p/3787940.html