select @start=1
select @partnr='abcdefghieeefffgggeeeefedef' select @partnr=stuff(@partnr,@start,0,',')
select @len=len(@partnr) while @len>=0
--and @start <len(@partnr)
begin
select @start=@start+4
select @partnr=stuff(@partnr,@start,0,',')
select @len=@len-4
end
print @partnr
select @partnr='abcdefghieeefffgggeeeefedef' select @partnr=stuff(@partnr,@start,0,',')
select @len=len(@partnr) while @len>=0
--and @start <len(@partnr)
begin
select @start=@start+4
select @partnr=stuff(@partnr,@start,0,',')
select @len=@len-4
end
print @partnr
declare @partnr varchar(100),
@start int,
@len int
select @start=1
select @partnr='abcdef' select @partnr=stuff(@partnr,@start,0,',')
select @len=len(@partnr) while @len>=0
--and @start <len(@partnr)
begin
select @start=@start+4
select @partnr=stuff(@partnr,@start,0,',')
select @len=@len-4
end
print @partnr
--你再试试.
declare @result varchar(100)
set @result = ''
set @partnr='abcdefghieeefffgggeeeefedef' while len(@partnr) > 0
begin
set @result = @result + ',' + left(@partnr , 3)
set @partnr = right(@partnr , len(@partnr) - 3)
end
print @result/*
,abc,def,ghi,eee,fff,ggg,eee,efe,def
*/
declare @partnr varchar(100),
@start int,
@len int
select @start=1
select @partnr='abcdefghieeefffgggeeeefedef'
select @len=len(@partnr)while @len>0
begin
select @partnr=stuff(@partnr,@start,0,',')
select @len=@len-3
select @start=@start+4
end
print @partnr /*
,abc,def,ghi,eee,fff,ggg,eee,efe,def
*/
declare @result varchar(100)
set @result = ''
set @partnr='abcdefghieeefffgggeeeefedef1' while len(@partnr) >= 3
begin
set @result = @result + ',' + left(@partnr , 3)
set @partnr = right(@partnr , len(@partnr) - 3)
end
set @result = @result + ',' + @partnr
print @result/*
,abc,def,ghi,eee,fff,ggg,eee,efe,def,1
*/
@start int,
@len int
select @start=1
select @partnr='abcdefghieeefffgggeeeefedef'select @partnr=stuff(@partnr,@start,0,',')
select @len=len(@partnr)select @start=@len/3+1
while @start>2
begin
select @start=@start-1
select @partnr=stuff(@partnr,@start*3-1,0,',')
end
print @partnr---
,abc,def,ghi,eee,fff,ggg,eee,efe,def
declare @partnr varchar(100), @start int, @len int
select @start=1
select @partnr='abcdefghieeefffgggeeeefedefyy' select @partnr=stuff(@partnr,@start,0,',')
select @len=len(@partnr)
while @len>0
--and @start <len(@partnr)
begin
select @len=@len-3
select @start=@start+4
if (@len>1)
begin
select @partnr=stuff(@partnr,@start,0,',')
end
end
print @partnr
,abc,def,ghi,eee,fff,ggg,eee,efe,def,yy