将逗号分隔的值拆分为行
在 SQL Server 中,将存储在表列中的逗号分隔字符串转换为多行可以可以使用 XML 和字符串操作技术的组合来实现。目标是将包含带有逗号分隔字符串的单行的表转换为包含多行的表,每行包含原始字符串中的唯一值。
要实现此目的,请按照以下步骤操作:
以下示例查询演示了此过程:
SELECT A.[id], Split.a.value('.', 'VARCHAR(100)') AS String FROM (SELECT [id], CAST ('<M>' + REPLACE([string], ',', '</M><M>') + '</M>' AS XML) AS String FROM TableA) AS A CROSS APPLY String.nodes ('/M') AS Split(a);
此查询将产生所需的输出,其中原始表中的每一行都扩展为多行,每行包含来自逗号分隔字符串的单个值。
以上是如何在 SQL Server 中将逗号分隔值拆分为行?的详细内容。更多信息请关注PHP中文网其他相关文章!