SQLServer中,将某一字段的多个值用,进行分隔

SQLServer中,将某一字段的多个值用,进行分隔

declare @a varchar(max)
set @a=''   
select @a=@a+color+',' from pcolor
select @a

 

利用游标取出主表中相关属性的值及从表中对应主键某一属性的值,并且,分隔

如:

主表
pid name
1  test1
2  test2

从表:
pid color
1  white
1  black
1  rouge
2  white
 

得到如下结果:
pid name  color
1  test1 white,black,rouge
2  test2 white

 

 

declare @a varchar(max)
declare @v varchar(50)
declare cur cursor
read_only
for select pid from 主表

declare @name varchar(40)
open cur

fetch next from cur into @name
while (@@fetch_status =0)
begin


set @a='';

select  @a=@a+color+','  from 从表 where pid=@name

--print @name+'     '
--
print @v+'    '
--
print @a

select [pid],[name],@a from 主表 where pid=@name

fetch next from cur into @name
end

close cur
deallocate cur
go

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值