0

是否有一种简单的方法可以使用 SQL Server Management Studio 中的输出到文本在 SQL Select 语句中进行扩展树视图?

输入表

GRP NAME ITEM1 ITEM2
--- ---- ----- -----
 1   AB   100   200
 1   AC   150   200
 1   AD   175   200
 2   BC   200   220
 2   BD   NULL  NULL

期望的输出

GRP 1
+-- AB
+    +-- ITEM1: 100
+    +-- ITEM2: 200
+-- AC
+    +-- ITEM1: 150
+    +-- ITEM2: 200
+-- AD
+    +-- ITEM1: 175
+    +-- ITEM2: 200

GRP 2
+-- BC
+    +-- ITEM1: 200
+    +-- ITEM2: 220
+-- BD

感谢 jlimited

4

1 回答 1

0

这样就可以了(您需要忽略输出中的第 2、3、4 列,它们用于排序):

select DISTINCT 'GRP ' + convert(varchar(10), GRP), convert(int, GRP), ' ', 0 from table1
UNION ALL
select '+-- ' + [NAME], convert(int, GRP), [name], 1 from table1
UNION ALL
select '+    +-- ITEM 1: ' + [ITEM1], convert(int, GRP), [name], 2 from table1 where ITEM1 IS NOT NULL
UNION ALL
select '+    +-- ITEM 2: ' + [ITEM2], convert(int, GRP), [name], 3 from table1 where ITEM2 IS NOT NULL
ORDER BY 2,3,4

SQL小提琴

于 2013-04-26T01:04:18.680 回答