SQL 怎么将一列中的数据按一个分隔符分成多列显示
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 怎么将一列中的数据按一个分隔符分成多列显示相关的知识,希望对你有一定的参考价值。
with HrmResource(id,lastname) as (select 167,'段秋月' union all
select 170,'杨子军'
)
,formtable_main_78(Requestid,WTCW,XMCY) as (
select 722,'xxxxx公司','167,170'
)
select a.*,stuff(c.[col],1,1,'') [项目名称]
from formtable_main_78 a
cross apply
(select ','+lastname from HrmResource b
where charindex(','+convert(varchar,b.id)+',',','+a.XMCY+',')>0
for xml path('')) c([col])
结果:
追问没对啊,你给的这种解决办法是固定的啊,问题是XMCY这列值不固定。
可能出现:
722 xxxx公司 167,170 段秋月,杨子军
723 yyyy公司 157,158,159,161 雷鸣,谢涛,张玲瑜,张潇
怎么办
以上是关于SQL 怎么将一列中的数据按一个分隔符分成多列显示的主要内容,如果未能解决你的问题,请参考以下文章