mysql多行合并成一行 逗号_sqlServer 2008 一行转多行的问题怎么解决呢?

1 select * fromTable_1;2 create table#table_temp(3 id int identity(1,1) not null,4 txt varchar(50));5 declare mycur cursor for select txt fromTable_16 openmycur7 declare @t_txt varchar(50),@t_txt1 varchar(50)8 fetch next from mycur into @t_txt

9 while(@@FETCH_STATUS = 0)10 begin

11 if CHARINDEX(',',@t_txt)> 0

12 begin

13 while(CHARINDEX(',',@t_txt)> 0)14 begin

15 set @t_txt1 = substring(@t_txt,1,CHARINDEX(',',@t_txt)-1)16 insert #table_temp(txt) values(@t_txt1)17 set @t_txt = SUBSTRING(@t_txt,CHARINDEX(',',@t_txt)+1,LEN(@t_txt) - LEN(@t_txt1))18 end

19 insert into #table_temp(txt) values (@t_txt)20 end

21 else

22 begin

23 insert #table_temp(txt) values(@t_txt)24 end

25 fetch next from mycur into @t_txt

26 end

27 closemycur28 deallocatemycur29 select * from#table_temp30 drop table #table_temp

@yj_smile: create table #table_temp(

id int identity(1,1) not null,

txt varchar(50));

declare mycur cursor for select txt from Table_1

open mycur

declare @t_txt varchar(50),@t_txt1 varchar(50)

fetch next from mycur into @t_txt

while(@@FETCH_STATUS = 0)

begin

if CHARINDEX(',',@t_txt)> 0

begin

while(CHARINDEX(',',@t_txt)> 0 )

begin

set @t_txt1 = substring(@t_txt,1,CHARINDEX(',',@t_txt)-1)

insert #table_temp(txt) values(@t_txt1)

set @t_txt = SUBSTRING(@t_txt,CHARINDEX(',',@t_txt)+1,LEN(@t_txt) - LEN(@t_txt1))

end

insert into #table_temp(txt) values (@t_txt)

end

else

begin

insert #table_temp(txt) values(@t_txt)

end

fetch next from mycur into @t_txt

end

close mycur

deallocate mycur

select * from #table_temp

drop table  #table_temp

不知道怎么提交代码!!!!

以上是用游标实现的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值