SQL Server從左邊填充字符串函數,lpad


使用給定的字符,左填充字符串至指定長度。

Oracle中有該函數,但是SQL Server中沒有

/*使用指定的字符從左邊填充字符串至指定長度
**如果字符串長度大於指定長度,返回字符串左邊的子串,長度為指定長度
*/
create function [dbo].[lpad](@s nvarchar(255),@length int,@char char(1))

returns nvarchar(255)

as

begin

declare @fullstring nvarchar(255) --填充后的字符串
declare @fillstring nvarchar(255) --填充的字符串
declare @filllen int --填充的長度
declare @i int

if @length<=len(@s)
return left(@s,@length)

set @filllen=@length-len(@s)
set @i=0


while(@i<@filllen)
begin
set @fillstring=isnull(@fillstring,'')+@char
set @i=@i+1
end

set @fullstring=@fillstring+@s
return @fullstring

end

GO


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM