【发布时间】:2017-12-05 13:55:32
【问题描述】:
这是我第一次发帖,如有错误请多多包涵。 我正在尝试使用分隔符“;”拆分数值使用 sql 到单独的列中,我能够使用下面的代码实现它的一部分拆分,但我想将它的其余部分拆分到第 3 列中以分隔列 我有一张这样的桌子
ID catalogNumber STEPID1
----------------------------
815326 FBRS415 499023;499027;726203
with tmp(catalognumber,stepid1_split,stepid1) as (
select catalognumber,cast(LEFT(stepid1, CHARINDEX(';',stepid1+';')-1) as varchar),cast(STUFF(stepid1, 1, CHARINDEX(';',stepid1+';'), '') as varchar)
from EXACT_MATCH
union all
select catalognumber, cast(LEFT(stepid1, CHARINDEX(';',stepid1+';')-1) as varchar), cast(STUFF(stepid1, 1, CHARINDEX(';',stepid1+';'), '') as varchar)
from tmp
where stepid1> ''
)
select *
from tmp
ID catalogNumber STEPID1 STEPID2 STEPID3
---------------------------------------------------
815326 FBRS415 499023 499027 726203
【问题讨论】:
-
Sql server 2014
标签: sql sql-server tsql sql-server-2014