我有许多表中有关用户对特定课程所有问题的回复的数据的代码。回复如下所示:SQL Server:将多行的高级报告合并为一个
userid|lesson|question |response|label|weight|duration_seconds
========================================================================
bob |first |loc_nameA|4 |R9 |3.5 |189
bob |first |loc_nameB|2 |R7 |4.5 |113
…
需要报告显示所有响应显示在一行中。因此,对于每个问题,我需要与它的相应的标签,重量和持续时间这样沿着显示响应到柱:
userid|lesson|1_resp|1_labl|1_weig|1_dura|2_resp|3_labl|3_weig|3_dura|4_resp…
========================================================================
bob |first |4 |R9 |3.5 |189 |2 |R7 |4.5 |113 |1
或通过使用“问题”的列值作为动态列 名称的一部分交替地。目前,它们都具有逻辑名称,如L1Q1所以只是1,2,3足以作为列名,但是这可能不会总是这样的情况:
userid|lesson|loc_nameA_resp|loc_nameA_labl|loc_nameA_weig|loc_nameA_dura|loc_nameB_resp|loc_nameB_labl|loc_nameB_weig|loc_nameB_dura|loc_nameC_resp…
================================================================================================================================================
bob |first |4 |R9 |3.5 |189 |2 |R7 |4.5 |113 |1
我一直在阅读有关数据透视表,但所有的例子似乎较为有限比我所描述的要多。 SQL Server 2005如何做到这一点?我应该使用别的东西吗?有更容易的方法吗?
请告诉我们为什么他们看起来错了。你也可以告诉我们使这两个输出成为它们的方式的规则。很难确定快照的要求。最后这需要报告。你在找什么(1)sql(2)如何布局(3)其他 – 2012-07-09 22:27:27