【发布时间】:2012-10-04 21:49:04
【问题描述】:
假设我有两张桌子:
Question (Id, Text)
Answer (Value, QuestionId, Guid)
Guid 列将同一个人的答案分组。
我需要一个查询来产生这样的结果:
'Question 1' | 'Question 2'
4 | 3
1 | NULL
NULL | 5
2 | 6
9 | NULL
问题文本被转换为列标题,答案值在行中。答案按Guid 分组,因此一行中有一个人的答案。如果某人没有回答特定问题,则返回 NULL。
问题的数量可能会有所不同。
用于产生样本结果的数据:
Question
Id | Text
1 | Question 1
2 | Question 2
Answer
Value | QuestionId | Guid
4 | 1 | AAA
3 | 2 | AAA
1 | 1 | BBB
5 | 2 | CCC
2 | 1 | DDD
6 | 2 | DDD
9 | 1 | EEE
您能帮我查询一下以产生结果吗?
【问题讨论】:
标签: sql sql-server sql-server-2008 tsql pivot