言う
Table A Table AB Table B
+----+---------+ +-----+-----+ +----+-----+
| id | name | | ida | idb | | id | age |
+----+---------+ +-----+-----+ +----+-----+
| 1 | 'one' | | 1 | 3 | | 3 | 3 |
+----+---------+ +-----+-----+ +----+-----+
| 2 | 'two' | | 2 | 4 | | 5 | 5 |
+----+---------+ +-----+-----+ +----+-----+
| 3 | 'three' | | 2 | 5 |
+----+---------+ +-----+-----+
What I want What I get
+---------+------+ +---------+------+
| name | age | | name | age |
+---------+------+ +---------+------+
| 'one' | 3 | | 'one' | 3 |
+---------+------+ +---------+------+
| 'two' | 5 | | 'two' | 5 |
+---------+------+ +---------+------+
| 'three' | NULL | | 'two' | NULL |
+---------+------+ +---------+------+
| 'three' | NULL |
+---------+------+
私のSQLは
SELECT A.name, B.age
FROM A
LEFT JOIN AB
ON A.id = AB.ida
LEFT JOIN B
ON AB.idb = B.id
制約Where
:特定の理由やsub-queries
パフォーマンス上の理由からステートメントを使用したくありません。
JOIN
リレーションABが/のみを使用しON
、サブクエリを使用せずに存在するものと一致するレコードのみを取得できる方法はありますか?