Accessのクエリを使って、3つのテーブルを結合してデータを取得しようとした時に少し戸惑ったので、残しておきます。
クエリと言ってもクエリデザイナを使えば、何の事は無いのですが、プログラムを使ってデータを取得したかったので、SQLで書いた時の例を整理しました。
データ要件
サンプルとしてテーブルを3つ(TableA, TableB, TableC)を準備しました。
SQL文
最初に考えたのは、以下の様な文でした。
SELECT * FROM TableA LEFT JOIN TableB ON TableA.CodeB = TableB.Code LEFT JOIN TableC ON TableB.CodeC = TableC.Code;
MySQLを使う事が多いためか、単純にJoinを並べれば良いと思っていたのですが、ダメで、実際には最初のJoinに()が必要でした。
SELECT * FROM (TableA LEFT JOIN TableB ON TableA.CodeB = TableB.Code) LEFT JOIN TableC ON TableB.CodeC = TableC.Code;
まぁ、当たり前の話なのかもしれませんが、ちょっと詰まっちゃったので、、