天天看点

T-SQL自定义函数LeftPad

T-SQL自定义函数,它有点像MS SQL Server的REPLICATE函数。它有三个参数,第一个@String是原有字符串,第二@Char参数就将要加入至前置字符串,第三个@Leng参数为前置字符串重复次数。 

T-SQL自定义函数LeftPad
T-SQL自定义函数LeftPad

udf_LeftPad

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

-- =============================================

-- Author:        Insus.NET

-- Create date:   2012-03-24

-- Description:   Character to prepend onto String

CREATE FUNCTION [dbo].[udf_LeftPad] 

(

    @String NVARCHAR(MAX),--原字符串

    @Char NVARCHAR, --前置字符

    @Leng INT --前置字符串最终长度

)

RETURNS NVARCHAR(MAX)

AS

BEGIN

    DECLARE @s NVARCHAR(MAX) = N''

    IF LEN(ISNULL(@Char,N'')) <> 0        

    BEGIN        

        WHILE LEN(@s) < @Leng 

        BEGIN

            SET @s = @Char + @s

        END  

    END

   RETURN @s + @String

END

Demo:

SELECT [dbo].[udf_LeftPad]('01','a',7) AS [NewString]

Result:

T-SQL自定义函数LeftPad