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

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- 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
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- 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:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
2011-03-24 显示Flash时控制其的宽度与高度
2009-03-24 provider: SQL 网络接口, error: 25 - 连接字符串无效
2009-03-24 动态设置显示方式