【发布时间】:2010-12-31 03:47:08
【问题描述】:
我有一个包含三列的表,我们将其称为 ID1、ID2 和 Value。
样本数据:
ID ID1 Value
1 1 0
1 2 1
1 3 1
1 3 2
1 4 0
1 4 1
1 5 0
1 5 2
2 1 2
值限制为 0、1 或 2。
我需要做的是将这些数据透视/转换为基于列的计数,以计算每个可能的值出现的次数,按 ID、ID1 分组。上面的输出应该是:
ID ID1 Val0 Val1 Val2
1 1 1 0 0
1 2 0 1 0
1 3 0 1 1
1 4 1 1 0
1 5 1 0 1
2 1 0 0 1
我使用的是 SQL Server 2008。我该怎么做?
【问题讨论】:
-
我假设结果中的第二行应该是
1 2 0 1 0?源数据中只有一行1 2 1。 -
你是对的。我已经修好了。
标签: sql sql-server pivot transformation