首页 > 代码库 > SQL 字符串分割表函数

SQL 字符串分割表函数

 1 --字符串分割表函数
 2 declare @str varchar(1000)
 3 declare @split varchar(10) 
 4 
 5 declare @i int;
 6 declare @count int;
 7 
 8 declare @ChildStr varchar(1000);
 9 declare @splitStr varchar(1000);
10 declare @Index int;
11 
12 declare @table as table (rowId int,splitStr varchar(1000))
13 declare @rowID int;
14 
15 set @str=aaa;bbb;ccc;d;;
16 set @split=;;
17 set @i=1;
18 set @count=LEN(@str);
19 set @ChildStr=@str;
20 set @rowID=1;
21 
22 while @i<=@count
23 begin
24     set @Index= charindex(@split,@ChildStr);
25     
26     if @Index >0
27     begin
28         set @splitStr=SUBSTRING(@ChildStr,0,@Index);
29         
30         insert @table
31         select @rowID,@splitStr
32         
33         set @ChildStr=SUBSTRING(@ChildStr,@Index+1,LEN(@ChildStr));
34         
35         set @rowID=@rowID+1;
36         set @i=@i+1;
37     end 
38     else if LEN(@ChildStr)>0
39     begin
40         insert @table
41         select @rowID,@ChildStr
42 
43         --select * from @table
44         return;
45     end
46     else
47     begin
48         --select * from @table
49         return;
50     end
51         
52 end

 

SQL 字符串分割表函数