如何在行中转置CSV字符串?在下面的示例中,行被转换为CSV字符串,但我想进行逆操作(将此字符串“Day,Evening,Night”拆分为行)?怎么做?
USE AdventureWorks
GO
-- Check Table Column
SELECT [Name]
FROM HumanResources.Shift
GO
-- Get CSV values
SELECT STUFF(
(SELECT ',' + s.Name
FROM HumanResources.Shift s
ORDER BY s.Name
FOR XML PATH('')),1,1,'') AS CSV
GO
该示例来自here。
答案 0 :(得分:1)
规范参考中有几种技巧:Arrays and Lists in SQL Server 2005 and Beyond作者:Erland Sommarskog
我们使用数字表技术
答案 1 :(得分:1)
我建议使用用C#编写的UDF - 相对容易开发(如果你熟悉C#),并且是执行时最快的选择。
阅读gbn提供的参考资料将更深入地理解这一主题,但肯定会花费更长时间。