将多行varchar字段解析为行(T-sql)

时间:2014-01-24 12:08:54

标签: sql sql-server tsql reporting-services

我正在SSRS做报告。数据库包含带有“注释”字段的表“项目”,该字段由用户以这种方式格式化:

#Completed
-line 1 description
-line 2 description
-line3 and so on

#Planned
-line 1 etc.

#Risks
- line1 ...etc

按顺序始终只有这3个类别。子弹点可以从0到无限(但我从未见过超过10)

我想以格式获取输出(数据集)(因此我可以在tablix中对它们进行分组):     ProjectID,Maincategory,itemID,子类别。 例如

1   |   Completed  |  1  |   line1 
1   |   Completed  |  2  |   line2
1   |   Completed  |  3  |   line3
...
1   |   Planned    |  1  |   Line1
...
1   |   Risks      |  1  |   line1
...

我无法更改源数据库,因此我无法创建存储过程,应该是常规查询。 我查看了CTE递归的各种解决方案,但我无法弄清楚它们如何在我的情况下改变它们。

谢谢!

0 个答案:

没有答案