SQL Server中将行内逗号分隔值拆分为多行并关联ID
在SQL Server中拆分逗号分隔字符串并创建视图保留对应ID
你只需要将原数据表和STRING_SPLIT的结果通过CROSS APPLY关联,就能在拆分字符串的同时保留对应的id字段。以下是创建目标视图的SQL语句:
CREATE VIEW dbo.SplitValsView AS SELECT t.id, s.value AS val FROM -- 替换成你实际的数据表名称 YourTableName t CROSS APPLY STRING_SPLIT(REPLACE(t.vals, ' ', ''), ',') s
关键说明:
CROSS APPLY的作用是将原表的每一行,与该行vals字段拆分后的多行结果进行关联,实现一对多的展开。REPLACE(t.vals, ' ', '')用于清除字符串中的空格,确保STRING_SPLIT能正确拆分出单个数值。- 记得把语句中的
YourTableName替换为你实际的数据表名称。
内容的提问来源于stack exchange,提问作者juhat
相关产品推荐
相关产品推荐

