2011-12-29 201 views

回答

1

没有号码 - 现在,SQL Server不具有等同于.NET的Format(在.ToString()使用)。

你可以做到这一点:

SELECT RIGHT('00000' + CAST(1 AS VARCHAR(5)), 5) 

的SQL Server 2012( “德纳”)将introduce a FORMAT T-SQL function

你也可以创建这样的通用功能 - 是这样的:

CREATE FUNCTION dbo.PadInt(@input INT, @length INT) 
RETURNS VARCHAR(20) 
AS BEGIN 
    DECLARE @Result VARCHAR(20) 

    DECLARE @Padding VARCHAR(20) 
    SELECT @Padding = REPLICATE('0', @Length) 

    SELECT @Result = RIGHT(@Padding + CAST(@Input AS VARCHAR(20)), @Length) 
    RETURN @Result 
END 

并且将其命名为:

SELECT dbo.PadInt(1, 5) 

,并取回:

00001 
+1

感谢它为我工作。 – user460293 2011-12-29 08:29:18