GO ALTER FUNCTION PaddingLeft(@input NVARCHAR(MAX),@padding NVARCHAR(MAX),@len INT) RETURNS NVARCHAR(MAX) BEGIN DECLARE @output NVARCHAR(MAX)=@input; IF LEN(@output)>@len RETURN @input; WHILE LEN(@output)<@len BEGIN SELECT @output=@padding+@output; END RETURN SUBSTRING(@output,LEN(@output)-@len+1,@len); END 例子: SELECT dbo.PaddingLeft('123','0',10)