欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SqlServer 表中一列拆分多行的方法

程序员文章站 2022-07-13 17:35:24
...

直接贴代码,下面是例子,假如业务表的结构如下

SqlServer 表中一列拆分多行的方法

1行id 需要将对应的 Split字段拆分多行来显示

------创建一个临时表--------存储数据
CREATE TABLE #tab_1
(
id INT,--主ID
name NVARCHAR(20)---拆分出来的每个子ID
)


-------(#B业务表)------循环业务表的所有主ID

DECLARE @i INT=1 
DECLARE @q INT=(SELECT MAX(id) FROM #B)


WHILE @i<aaa@qq.com 
BEGIN
-----------循环过程把每个主ID对应的子ID数据,和主ID一起,作为两个字段一起插入临时表

INSERT INTO #tab_1
        ( id, name )
SELECT 
@i,
Value 
FROM dbo.plm_liuz_fn_Split1((SELECT Split FROM #b WHERE aaa@qq.com),'-')

SET @aaa@qq.com+1
END
SELECT * FROM #tab_1

最后的显示结果就为:

根据Split的分隔符拆分成多行

SqlServer 表中一列拆分多行的方法