オプショナリティとテーブル結合 (1)

オプショナリティがテーブル結合(JOIN)にどのように影響するかをまとめました。3回に分ける予定です。
次回: id:simply-k:20100819:1282156592

オプショナリティとテーブル結合

リレーションシップのオプショナリティは、SQLでのテーブル結合(JOIN)に、以下のような影響を与えます。*1 *2

オプショナリティ テーブル結合への影響
必須 - 必須
  • INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOINは、全て同じ結果となる。
必須 - 任意
  • INNER JOINとRIGHT JOINは同じ結果となる。
  • LEFT JOINとFULL JOINは同じ結果となる。
任意 - 必須
  • INNER JOINとLEFT JOINは同じ結果となる。
  • RIGHT JOINとFULL JOINは同じ結果となる。
任意 - 任意
  • INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOINは、全て違う結果となる可能性がある。


次回は、サンプルデータを使って上記の内容を説明します。
次回: id:simply-k:20100819:1282156592

*1:当然、リレーションシップに基づいて結合条件を指定した場合の話です。

*2:オプショナリティのER図は多対1としましたが、1対1や1対多でも同様です。