「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

「左外部結合(LEFT OUTER JOIN)」と「右外部結合(RIGHT OUTER JOIN)」の違い

スポンサーリンク

予備知識


用語意味
データベースデータがそれっぽい感じに入っている箱。データのまとまり
テーブルデータベースにおいて、実際にデータを入れておく箱
結合ガション!と合体させること
テーブル結合データベースの話で出てくる用語で、複数のテーブルを合体させて1つのテーブルっぽくすること
内部結合テーブル結合のやり方のひとつで、両方のテーブルの合体可能なデータのみを取り出すやり方
外部結合テーブル結合のやり方のひとつで、基準となるテーブルにデータがあれば、もう一方のテーブルになくても取り出すやり方

データベースは「データを入れておく箱」です。


「左外部結合(LEFT OUTER JOIN)」と「右外部結合(RIGHT OUTER JOIN)」の違い1

ただし「データベース」という用語は、実際には もう少し複雑な概念です。
データを入れておく箱そのものは「テーブル」と言います。

とりあえず

データベース関連で出てくる用語で、実際にデータを入れておく箱が「テーブル」

と覚えてください。

さて、このテーブルですが、実は合体できます。
2つのテーブルをくっつけて、1つのテーブルっぽくできるのです。

この2つのテーブルを合体させることを指して「結合」や「テーブル結合」と言います。

また、テーブル結合には

1.内部結合
2.外部結合


の2種類あります。

内部結合は

合体できたデータのみ取り出すよ!な やり方

です。


「左外部結合(LEFT OUTER JOIN)」と「右外部結合(RIGHT OUTER JOIN)」の違い2

外部結合は

合体できなくても取り出すよ!な やり方

です。
基準となるテーブルにデータがあれば、たとえ合体できなくても取り出します。


「左外部結合(LEFT OUTER JOIN)」と「右外部結合(RIGHT OUTER JOIN)」の違い3

それぞれの用語の意味


用語意味
左外部結合(LEFT OUTER JOIN)テーブル結合のやり方のひとつで、1つ目のテーブルの全データを取り出して、それに2つ目のテーブルのくっつけられるデータをくっつけるやり方
右外部結合(RIGHT OUTER JOIN)テーブル結合のやり方のひとつで、2つ目のテーブルの全データを取り出して、それに1つ目のテーブルのくっつけられるデータをくっつけるやり方

似ているところ


どちらも外部結合です。
基準となるテーブルの全データを取り出して、それにもう一方のテーブルの合体できるやつだけ合体させます。


「左外部結合(LEFT OUTER JOIN)」と「右外部結合(RIGHT OUTER JOIN)」の違い4

違うところ


基準となるテーブルが違います。

イメージの話になりますが、左外部結合は左のテーブルが基準となるテーブルです。
左のテーブルの全データを取り出して、それに右のテーブルのくっつけられるデータをくっつけます。


「左外部結合(LEFT OUTER JOIN)」と「右外部結合(RIGHT OUTER JOIN)」の違い5

一方、右外部結合は右のテーブルが基準となるテーブルです。
右のテーブルの全データを取り出して、それに左のテーブルのくっつけられるデータをくっつけます。


「左外部結合(LEFT OUTER JOIN)」と「右外部結合(RIGHT OUTER JOIN)」の違い6

ただし、です。
2つのテーブルのうち、どちらを左のテーブルと見なすかは好きに決められますよね?

よって、テーブルの左右を入れ替えれば、左外部結合は右外部結合に書き換えられます。


「左外部結合(LEFT OUTER JOIN)」と「右外部結合(RIGHT OUTER JOIN)」の違い7

同じように、右外部結合は左外部結合に書き換えられます。


「左外部結合(LEFT OUTER JOIN)」と「右外部結合(RIGHT OUTER JOIN)」の違い8

つまり

左外部結合と右外部結合は実質的に同じ

です。


個人的な使い分け


常に左外部結合を使います。
右外部結合は使いません。

1.右外部結合は左外部結合に書き換えられる
2.左外部結合と右外部結合が混在すると、分かりにくくなる


というのが、その理由です。


スポンサーリンク
書籍画像029
書籍画像074


書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
実務で役立つ バックアップの教科書 基本の考え方からツール活用・差分管理・世代管理・データ保全・リストア・リカバリー・可用性の確保まで
体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践