0

私は3つのテーブル、a、b、cを持っています

2つのテーブルに左結合を追加することは可能です。左結合によって3番目のテーブルを追加するを選択します。

例:

SELECT * from a,b where  a.x=b.x and a.z=b.z and b.y>0 

(そのルールで完全一致を見つけることができるレコードのみを選択する必要があります)

ここで、3番目のテーブルからいくつかのフィールドを追加したいのですが、3番目のテーブルに一部のテーブルa、bレコードのデータが含まれていない可能性があります。私が理解しているように、私は左結合を使用できますか?

私はどのようにこれを選択することができますか:

SELECT a.*,b.*, c.Q from a,b where  a.x=b.x and a.z=b.z and b.y>0  left join c on a.x=c.x 
4

2 に答える 2

2

内部結合を作成したくない場合:

SELECT a.*,b.*, c.Q 
FROM (a,b)  
LEFT JOIN c 
ON a.x=c.x 
WHERE a.x=b.x and a.z=b.z and b.y>0
于 2012-08-17T16:26:44.297 に答える
1
SELECT a.*,b.*, c.Q 
FROM a 
INNER JOIN b 
  ON a.x=b.x AND a.z=b.z AND b.y>0
LEFT JOIN c 
  ON a.x=c.x
于 2012-08-17T16:23:02.143 に答える