サブクエリは、SQL文の中に含まれる別のSQL文です。主にWHEREやFROM句で使用され、単独で結果を返すクエリに対してさらに条件を付け加えることができます。
SELECT * FROM employees WHERE id IN (SELECT id FROM department WHERE name = ‘Engineering’);
FULL OUTER JOINとは
FULL OUTER JOINは、2つのテーブルを結合する際に、どちらのテーブルにも存在するデータだけでなく、片方にしか存在しないデータも結果に含めるための方法です。
SELECT A.id, B.name FROM table_A A FULL OUTER JOIN table_B B ON A.id = B.id;
サブクエリとFULL OUTER JOINの組み合わせ
基本的な組み合わせ方
サブクエリとFULL OUTER JOINを組み合わせることで、より柔軟なデータ抽出が可能になります。
SELECT A.*, B.* FROM
(SELECT id, name FROM table_A WHERE condition1) A
FULL OUTER JOIN
(SELECT id, name FROM table_B WHERE condition2) B
ON A.id = B.id;
実用例
ID
Name
Department
1
John
Engineering
2
Sarah
Sales
3
Mary
Engineering
テーブル1: Employees
ID
Department
Location
1
Engineering
New York
2
Sales
San Francisco
3
HR
Chicago
テーブル2: Department
SELECT E.*, D.Location FROM
(SELECT * FROM Employees WHERE Department = ‘Engineering’) E
FULL OUTER JOIN
(SELECT * FROM Department WHERE Location = ‘New York’) D
ON E.Department = D.Department;
コメント