首页 > 解决方案 > 按新行分隔值并拆分到新行

问题描述

如何在 SQL Server 中按新行分隔值并拆分到新行。我有以下数据

代理人
98765 代理 1 代理 2 代理 3
12345 代理4 代理5 代理6

或如下

在此处输入图像描述

现在我必须将其转换为以下 -

代理人
98765 代理1
98765 代理2
98765 代理3
12345 特工4
12345 特工5
12345 特工6

标签: sqlsql-server

解决方案


使用string_split()

select t.ticket, s.value as agent
from t cross apply
     string_split(t.agent, '
') s
order by s.value;

是一个 db<>fiddle。


推荐阅读