假设int类型的123,把他转换成5为的字符号变成字符串00123int类型为变量,字符串的长度也为变量,怎么处理?

解决方案 »

  1.   

    DECLARE @n INT,@l INT
    SET @n=123
    SET @l=5
    SELECT CASE WHEN LEN(@n)>=@l THEN RTRIM(@n) ELSE REPLICATE('0',@l-LEN(@n))+RTRIM(@n) END
      

  2.   

    declare @a int
    select @a=123select right(100000+@a,5)
      

  3.   

    或者DECLARE @n INT,@l INT
    SET @n=123
    SET @l=5
    SELECT RIGHT(REPLICATE('0',100)+RTRIM(@n),@l)
      

  4.   

    --
    Declare @t Int,@Len Int
    Set @t=123
    Set @Len=5
    Select Right(Power(10,@Len+1)+@t,@Len)
      

  5.   

    DECLARE @Number int
    DELCARE @strNumber varchar(50);
    DECLARE @CommentNumber varchar(50);set @strNumber=Convert(varchar(50),@Number);IF(len(@strNumber<5)
    BEGIN
        SET @CommentNumber ="0"+@strNumber
    END
      

  6.   

    夜兄的代码都出了,你们还敢发其它的吗?declare @a int
    select @a=123
    select right(100000+@a,5)--高明。