セッションと質問の数値フィールドを持つテーブルがあります。各セッションには、質問 1、2、および 3 があります。1 は「努力」、2 は「満足」、3 は「知識」です。「非常に満足」、「非常に満足」、「やや満足」、「不満」、「非常に不満」の5つの選択肢があります。
テーブルは次のようになります。
Session Question Answer
------- -------- ------------------
1 1 Unsatisfied
1 2 Very Satisfied
1 3 Somewhat Satisfied
レポートを次のようにしたい:
Session Effort Knowledge Satisfaction
------- -------------- -------------- --------------
1 Unsatisfied Unsatisfied Very Satisfied
2 Very Satisfied Very Satisfied Very Satisfied
ただし、case ステートメントを使用すると、次のようになります。
Session Question Effort Knowledge Satisfaction
------- -------- ----------- -------------- ------------
1 1 Unsatisfied NULL NULL
1 2 NULL Very Satisfied NULL
1 3 NULL NULL Unsatisfied
私が使用しているクエリは次のとおりです。
select
distinct session
,Question
,case
when Question = '1'
then Answer
end as "Effort"
,case
when Question = '3'
then Answer
end as "Knowledge"
,case
when Question ='2'
then Answer
end as "Satisfaction"
from Survey_Table
データをセッションごとに単一の行として返す方法についてのアイデアはありますか?