【发布时间】:2012-11-01 20:03:16
【问题描述】:
我有下表和以下示例数据
ID Language Question SubQuestion SubSubQuestion TotalCount TotalPercent
3 E 9 0 1 88527 73%
3 E 9 0 2 19684 16%
3 E 9 0 3 12960 11%
3 E 9 0 9 933 1%
我想要这样的一排
ID Language TotalCount901 TotalPercent901 TotalCount902 TotalPercent902 TotalCount903 TotalPercent903
3 E 88527 73% 19684 16% 12960 11%
我已经厌倦了使用 pivot 命令,但它不适合我。
【问题讨论】:
-
“不起作用”是指它会引发错误,给出不想要的结果,还是别的什么?
-
分组标准是什么?子/子子问题的数量是动态的吗?由于需要使用动态生成的 SQL 代码,因此很难使用动态列数进行透视。您是否使用任何类型的应用程序语言来显示可以进行旋转的结果?对于动态列宽方案,这通常更容易。
-
它有效,但我没有得到我想要的结果。我的逻辑全错了。有需要可以贴代码。 @mellamokb,我相信分组应该是 ID 和 lang。即,我只想要一行用于 ID 和 lang(在我的真实表中,我有许多 id 和许多 lang)。
-
不,sub/subsub/subsubsub 不是动态的。永远会有他们三个。如果你的意思是价值观,那么也没有!但是它们中有数值
标签: sql sql-server tsql pivot unpivot