我在我的数据库中有这两个表,因为你看他们有1-> N关系。 它是每个参与者在唯一日期回答调查问卷的日志, 在每个日期,参与者可以回答3个问卷M(早上)N(中午)E(晚上),每个问卷包含编号的问题(1,2,3 ..) 注意:参与者的唯一键是参与,忽略研究和组ID 我需要的结果是:
正如您所看到的,每个问卷都可能有不同数量的问题(上午问题包含4个,中午问题包含3个,晚上问题包含2个)。
答案 0 :(得分:0)
您正在尝试使用行数据并将其转换为列(数据透视),即每个日期/时间/问题都将是您所需输出中的列。
当您正在旋转的数据不是常数或可枚举时,这通常很难在SQL中进行,如果不是不可能的话。
在这些情况下,您需要做的是从报告层访问数据并在报告级别进行数据透视,例如您可以在SSRS或Qlikview中进行。
如果您没有报告图层,正如我在评论中所说,您可以随时将数据下载到电子表格并创建数据透视表。如果你需要知道如何在Excel中进行透视,你可以在网上进行搜索,你会发现许多教程,例如这个:
您还可以使用其他电子表格软件(如LibreOffice)来创建数据透视表: