次のような 2 つのトランザクション テーブルがあります。
TableA
X R S
71 1 10
71 2 20
71 3 30
72 1 40
72 2 50
72 3 60
TableB
X P Q
71 1 110
71 2 120
71 3 130
73 1 140
73 2 150
73 3 160
テーブルをフラット化し、次のような結果が得られるクエリを実行したい:
X S1 S2 S3 Q1 Q2 Q3
71 10 20 30 110 120 130
72 40 50 60 0 0 0
73 0 0 0 140 150 160
ここで、S と Q の下付き文字は、2 番目の列が下付き文字と等しい場合の 3 番目の列の値を示します。たとえば、S1 はS
2 番目の列が 1 に等しい場合の列の値を示し、Q2 はQ
2 番目の列が 2 の場合の値を示します。
私はそれについて最善の方法が何であるかを理解できません。case ステートメントを使用できるか、サブクエリである可能性があります。しかし、正直なところ、それについて具体的なアイデアはありません。