×
結合

自己結合 | Oracle Database SQL (1Z0-071-JPN)

自己結合とは

自己結合(Self Join)とは、同一の1つのテーブルに対して、あたかも別々の2つのテーブルが存在するかのようにそれぞれに異なるテーブル別名(Alias)を付与し、テーブル自身同士を結合する手法です。 Oracle Database SQL (1Z0-071) の試験対策においては、自己結合の基本概念だけでなく、実務で使われる構文ルールや例外事項、エラーが発生する条件を正確に把握しておくことが非常に重要です。

具体例

社員テーブルの中で「社員」とその「上司(マネージャー)」の関係を調べる例です。社員テーブルの manager_id 列(外部キー)と、同じ社員テーブルの employee_id 列(主キー)を結合することで、社員と上司の名前を1行に並べて表示できます。
SELECT 
    e.last_name AS employee_name,
    m.last_name AS manager_name
FROM employees e
LEFT JOIN employees m 
  ON e.manager_id = m.employee_id;

もう少し詳しく