怎么把带逗号隔开的字段一行数据分割成两行

sqlserver数据库,如图该表字段有dh、zrbm两个字段,怎么样做到zrbm是逗号时把他们分割成多行,比如第八行65,378,怎么写sql时其变成同一个单号,zrbm分别是65和378的两行数据?

image.png

-------------------------------------------------------------

已解决

参考https://blog.51cto.com/u_16099264/6588011

image.png

SQL yzmaDt6d6191220 发布于 2023-8-10 13:52 (编辑于 2023-8-10 14:23)
1min目标场景问卷 立即参与
回答问题
悬赏:1 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
snrtuemcLv8专家互助
发布于2023-8-10 13:54
  • yzmaDt6d6191220 yzmaDt6d6191220(提问者) 这个我之前试过,这个只能把这个字段单独拆分开来,无法带上第一个字段一起进行
    2023-08-10 13:56 
最佳回答
0
CD20160914Lv8专家互助
发布于2023-8-10 14:04

select 

a.number_s,

substring(a.submit_param, b.number, charindex(',', a.submit_param + ',', b.number) - b.number) as submit_param

from (select 'A1555' as number_s,'115,116' as submit_param

 union all

 select 'A1176' as number_s,'117,119,120' as submit_param

 ) a

join master..spt_values b on b.type = 'P'

where charindex(',', ',' + a.submit_param, b.number) = b.number

image.png

  • yzmaDt6d6191220 yzmaDt6d6191220(提问者) 虽然已按第一楼楼主的回答测试,并且已解决,但是还是感谢您的解答!
    2023-08-10 14:24 
  • 3关注人数
  • 230浏览人数
  • 最后回答于:2023-8-10 14:23
    请选择关闭问题的原因
    确定 取消
    返回顶部