参数表P如下
code value
b01 CCTV
b02 MTV
b03 KTV
... ...
表A如下:
字段a 字段b 字段c
b01;b03 ... ...
b02;b1;b03 ... ...
希望得到的结果:
字段a 字段b 字段c
CCTV;MTV ... ...
MTV;CCTV;KTV ... ...
请问在数据库中用存储过程或函数怎么写比较好?
表A一万行以内,参数表p不固定,大约20行以内
SQL SERVER2008 .net 3.5 B/S网站项目
谢谢?
declare @t table(code varchar(10), value varchar(10))
insert @t
values('b01', 'CCTV'),('b02','MTV'),('b03','KTV')
declare @t1 table(a varchar(20))
insert @t1
values('b01;b03'),('b02;b01;b03')
select STUFF((select ';'+value from @t where CHARINDEX(code,a.a)>0 for xml path('')),1,1,'') from @t1 a