コース: プログラミングの基礎:データベース

今すぐコースを受講しましょう

今すぐ登録して、23,200件以上登録されている、業界エキスパート指導のコースを受講しましょう。

テーブルを外部結合する

テーブルを外部結合する

このレッスンでは 複数のテーブルを結合する際に 同じ値を持つ行以外も結合する 外部結合について説明します。 これはEmployeeとDepartmentテーブルを 内部結合で結合した結果を 表示したものです。 内部結合は 指定した列について 同じ値を持つ行同士を結合します。 ですから指定した列の値が どちらかにしかない行は抽出されません。 しかし時には一致しない行も 取得したい場合もあるでしょう。 その場合には外部結合を行います。 外部結合は 指定した列の値が テーブルのどちらか一方にしかない行も 抽出することができます。 外部結合には 「左外部結合」「右外部結合」 「完全外部結合」があります。 左右どちらのテーブルを優先するかで 「左外部結合」 「右外部結合」が決まります。 左外部結合を行うのには 「LEFT OUTER JOIN」と記述します。 この時「OUTER」は省略が可能です。 このように記述すると LEFT OUTER JOINの左側に書かれている Employeeテーブルが優先されます。 実行するとこの場合、 「渡辺崇」のDepartmentIDは「null」なので Departmentテーブルとリンクできず それらの列には「null」が入ります。 一方、右外部結合を使用するのには 「RIGHT OUTER JOIN」と記述します。 この場合も「OUTER」は省略が可能です。 右外部結合では 右側のテーブルの内容を優先します。 実行すると 従業員のいない行も返却されます。 両方を行う「完全外部結合」もあります。 これはご想像のとおり、 2つのテーブルそれぞれに一致しない行も 抽出結果に含めます。 一致しない行には null値を返却します。 完全外部結合を使用するのには 「FULL OUTER JOIN」を記述します。 このレッスンでは 複数のテーブルを結合する際に 同じ値を持つ行以外も結合する 外部結合について説明しました。

目次