1

私は 1 つのテーブルから情報を取得しようとしています。それを使用して 2 番目のテーブルからデータを取得し、2 番目のテーブルのデータを参照して関連するすべてのフィールドを取得します。すなわち:

表 1 :

ID 
--
69

表 2 :

entity_id | id
----------------
69        | 134

表3 :

id  | postcode | cost
----------------------
134 | m21 6fh  | 850

のエントリごとにこれを行う必要がありますtable1。3番目のテーブルに到達するまで機能するLEFT JOINを使用しようとしています。

4

4 に答える 4

0

この方法で簡単に試してください:

SELECT Table3.* FROM Table1, Table2, Table3
WHERE table1.ID = table2.EntityId
AND table3.id = table2.id
于 2013-11-04T15:40:36.863 に答える
0

フォローしてみてください

Select t1.*, t2.*, t3.* from table1
left join table2 on t1.id = t2.id
left join table3 on t1.id = t3.id -- change to t2.id = t3.id if you want to fetch only when id exists in table2

任意の場所で内部結合を使用するか、3 番目のテーブルで結合するt2.id = t3.id代わりに使用すると、結果が変わることに注意してください。t1.id = t3.id

于 2013-11-04T15:39:24.250 に答える
0

これは機能しませんか?

SELECT *
FROM table1
  LEFT JOIN table2 ON table1.ID = table2.entity_id
  LEFT JOIN table3 ON table2.ID = table3.ID

注: table2 データがある場合、table3 データのみが取得されますが、これは避けられません。

于 2013-11-04T15:41:48.290 に答える
0

これを試して:

SELECT t1.*, t2.*, t3.* FROM Table1 t1
  LEFT JOIN Table2 t2 ON t2.entity_id = t1.id
  LEFT JOIN table3 t3 ON t3.id = t2.id
于 2013-11-04T15:41:54.530 に答える