【发布时间】:2018-08-17 09:27:49
【问题描述】:
我正在寻找一种在 SQL Server 中将行转换为列的有效方法。我听说 PIVOT 是为此而生的。但是我的用例有点不同。
实际表格:
----------------------------------------
| Id |Category| Part1 |Part2 |Part3 |
----------------------------------------
| 1 |A |5 |0 |0 |
| 1 |B |0 |1 |3 |
| 1 |C |0 |0 |0 |
| 1 |D |0 |0 |0 |
----------------------------------------
我正在寻找的结果:
---------------------------------------------------------
| Id |Category| xxx |yyyyy |zzzzz |ffffff |hhhhh |
---------------------------------------------------------
| 1 |A |5 |B |1 |B |3 |
---------------------------------------------------------
这有可能吗?我也在考虑子查询(https://www.dofactory.com/sql/subquery)。
告诉我从哪里开始。谢谢
【问题讨论】:
-
您在问题文本中编写了 SQL Server,但标记了 MySQL。究竟是哪一个?
-
你能解释一下这背后的逻辑吗?是 t-sql 还是 Mysql ?
-
逻辑不健全,至少在我看来
-
“xxx”、“yyyyy”等是什么意思?
-
为什么
fffff是C而不是B?
标签: sql sql-server subquery pivot