私の状況では、2 つのテーブルがあります。それらを結合して、重複するレコードを同じ行に表示したいと考えています。以下に示すモックテーブル構造
MainTbl 列: MKey1、MKey2、MData1、MData2、MData3
SuppTbl 列: SPrimaryKey、SKey1、SKey2、SData1、SData2
MainTbl を SuppTbl に LEFT JOIN したい。ただし、SuppTbl には、SKey1 および SKey2 コンボ キーの重複が含まれています。
私が望む結果は以下のとおりです。「-#」は重複数を示します。
MKey1,MKey2,MData1,MData2,MData3,SData1-1,SData2-1,SData1-2,SData2-2
基本的に、結合のすべてのフィールドは、1 つの Key1 と Key2 に基づく 1 つの行に含まれている必要があります。
ショーン W による回答の試行
SELECT
MainTbl.MKey1,
MainTbl.MKey2,
tcd.SData1 AS SData11,
tcd.SData2 AS SData22,
tcr.SData1 AS SData12,
tcr.SData2 AS SData22
FROM MainTbl
LEFT JOIN SuppTbl tcd
ON MainTbl.MKey1=tcd.SKey1 AND MainTbl.MKey2=tcd.SKey2
LEFT JOIN SuppTbl tcr
ON MainTbl.MKey1=tcr.SKey1 AND MainTbl.MKey2=tcr.SKey2
WHERE tcd.SData1 < tcr.SData1
結果成功しません。レコードを取得しませんでした。