「INNER JOINとOUTER JOINって何が違うの?」
応用情報技術者試験でもデータベース分野で頻出ですが、
- JOIN自体が難しい…
- どっちがデータ多く出る?
- NULLが出る理由は?
- LEFT JOINって何?
で混乱する人がかなり多いテーマです。
この記事では、
- JOINとは?
- INNER JOINとは?
- OUTER JOINとは?
- 違い
- 試験での頻出ポイント
を分かりやすく解説します!
まず結論
INNER JOIN
「両方に存在するデータだけ取得」
OUTER JOIN
「片方しか無いデータも含める」
これが最大の違い!
超簡単にいうと
| JOIN | イメージ |
|---|---|
| INNER JOIN | 共通部分 |
| OUTER JOIN | 共通+片側データ |
まずJOINとは?
超重要!
JOIN
複数テーブル結合
なぜ必要?
例えば:
社員テーブル
社員ID | 名前
1 | 山田
2 | 鈴木
3 | 佐藤
注文テーブル
社員ID | 注文数
1 | 10
2 | 5
一緒に見たい
↓
JOIN使う
INNER JOINとは?
超頻出!
特徴
共通データのみ
イメージ
社員テーブル ∩ 注文テーブル
SQL例
SELECT *
FROM 社員
INNER JOIN 注文
ON 社員.社員ID = 注文.社員ID;
結果
1 山田 10
2 鈴木 5
社員3は?
出ない
理由
注文無し。
OUTER JOINとは?
超重要!
特徴
片側データ残す
種類
- LEFT OUTER JOIN
- RIGHT OUTER JOIN
- FULL OUTER JOIN
LEFT OUTER JOIN
頻出!
意味
左テーブル全部残す
SQL
SELECT *
FROM 社員
LEFT JOIN 注文
ON 社員.社員ID = 注文.社員ID;
結果
1 山田 10
2 鈴木 5
3 佐藤 NULL
NULLの理由
注文無し。
RIGHT OUTER JOIN
右側全部残す
FULL OUTER JOIN
両側全部残す
INNER JOINとOUTER JOINの違い
| 比較 | INNER JOIN | OUTER JOIN |
|---|---|---|
| 共通データ | ○ | ○ |
| 片側のみ | × | ○ |
| NULL発生 | 少ない | 多い |
| データ量 | 少なめ | 多め |
ベン図イメージ
INNER
○ 重なり合った箇所のみ
OUTER
○ 全体含む
試験で重要ポイント
超頻出!
INNER
共通部分
OUTER
残す側重要
LEFT JOINは?
超頻出!
左を残す
よくあるひっかけ
「LEFT JOINは右を全部出す」
→ ❌違う!
LEFT JOINは:
左側全部残す
1分で復習!
INNER JOIN
共通だけ
OUTER JOIN
片側含む
LEFT JOIN
左残す
NULL発生
OUTER多い
練習問題
問題
LEFT OUTER JOINの特徴として最も適切なものはどれか。
ア
共通データのみ取得
イ
左側テーブルを全件残す
ウ
右側のみ取得
エ
結合できない
解答
正解:イ
解説
LEFT OUTER JOINは、左テーブルを基準に全件保持し、対応データが無ければNULLになります。
まとめ
INNER JOIN
「共通部分」
OUTER JOIN
「片側も残す」
超重要
- LEFT JOIN
- NULL
- 共通部分
- 結合条件
まずは、
「INNER=重なる所」
「OUTER=はみ出しも残す」
このイメージを持つとかなり理解しやすくなります!
知識に自信ができた方は、今度は自身のキャリアアップに向けて準備してみませんか?

未経験から、ITエンジニアへ。
「IT業界に興味はあるけれど、自分にできるか不安」「何から始めればいいのか分からない」そんな方のために、Tech GO は未経験からのIT転職を専門的にサポートします。求人を紹介するだけではなく、あなたの強みを整理し、応募準備から入社後の成…
まずは無料でキャリア相談

コメント