1. ホーム
  2. sql

[解決済み] SELF JOINとは何か、どんな時に使うのか?重複

2022-06-29 15:56:26

質問

自己結合とはどのようなもので、どのような場合に使うのでしょうか?自己結合について理解していないので、例を挙げて素人なりに説明してもらえると助かります。

どのように解決するのですか?

テーブルがそれ自身のデータを参照している場合、自己結合を使用します。

例えば Employee テーブルには SupervisorID カラムがあり、そのカラムは現在の従業員の上司である従業員を指します。

データをクエリして1行で両方の人の情報を取得するには、次のように自己結合します。

select e1.EmployeeID, 
    e1.FirstName, 
    e1.LastName,
    e1.SupervisorID, 
    e2.FirstName as SupervisorFirstName, 
    e2.LastName as SupervisorLastName
from Employee e1
left outer join Employee e2 on e1.SupervisorID = e2.EmployeeID