sqlserver存储过程 分割字符串再组装

有三个字符串。比如。A=“440,441,442,443”,B="a,b,c,d" ,C=“1,2,3,4”.三个字符串里面的值是一一对应的。
在存储过程里面如何把这三个字符串分割之后然后组装成 440,a,1;441,b,2;442,c,3;443,d,4;
最好有一个规范的。多谢了。

CREAT PROCEDURE [dbo].[Pro_STR]

@A nvarchar(200)='440,441,442,443',
@B nvarchar(200)='a,b,c,d',
@C nvarchar(200)='1,2,3,4'

AS
BEGIN
DECLARE @result nvarchar(4000)
DECLARE @strSQL nvarchar(4000)

set @result=''
set @A=@A+','
set @B=@B+','
set @C=@C+','

WHILE CHARINDEX(',',@A)>0
    BEGIN
        set @result=@result+LEFT(@A,CHARINDEX(',',@A)-1)+','+LEFT(@B,CHARINDEX(',',@B)-1)+','+LEFT(@C,CHARINDEX(',',@C)-1)+';'
        SET @A=STUFF(@A,1,CHARINDEX(',',@A),'')
        SET @B=STUFF(@B,1,CHARINDEX(',',@B),'')
        SET @C=STUFF(@C,1,CHARINDEX(',',@C),'')
    END
set @strSQL='select '''+ @result +''''
exec(@strSQL)

END


这代码片怎么给切分了,你复制一下 运行一下就行

STUFF用法:
http://www.cnblogs.com/345563452/archive/2009/10/29/1592048.html

CHARINDEX用法:
http://www.cnblogs.com/beeone/p/3621743.html

希望对你有帮助