特定のレッスンのすべての質問に対するユーザーの回答に関する多くのテーブルからのデータをまとめるコードがあります。応答は次のようになります。
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
…
すべての回答を 1 行に表示するレポートを作成する必要があります。したがって、質問ごとに、次のように、対応するラベル、重み、および期間とともに、応答を列に表示する必要があります。
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 でこれを行うにはどうすればよいですか? 他のものを使用する必要がありますか?もっと簡単な方法はありますか?