Accessのクエリを使って3つのテーブルを結合する

OLYMPUS DIGITAL CAMERA

Accessのクエリを使って、3つのテーブルを結合してデータを取得しようとした時に少し戸惑ったので、残しておきます。
クエリと言ってもクエリデザイナを使えば、何の事は無いのですが、プログラムを使ってデータを取得したかったので、SQLで書いた時の例を整理しました。

データ要件

サンプルとしてテーブルを3つ(TableA, TableB, TableC)を準備しました。
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;

まぁ、当たり前の話なのかもしれませんが、ちょっと詰まっちゃったので、、

Pocket
LINEで送る

  1. コメントはまだありません。

  1. トラックバックはまだありません。

CAPTCHA