広告スペース(バナー)
🗄️SQL レッスン
データ操作とサブクエリ5▾
構文の基本を深める7▾
応用的な条件・結合7▾
検索とテーブル操作の応用6▾
高度なクエリ技法6▾
集計とデータ整合性6▾
レッスン 16 / 50
INNER JOINとLEFT JOINの違い
このレッスンでは、INNER JOINとLEFT JOINの違いを学び、目的に応じて正しく使い分けられるようになることを目標にします。「SQL INNER JOIN LEFT JOIN 違い」で調べている方向けです。
INNER JOINは両方のテーブルに一致するデータがある行だけを取得します。LEFT JOINは左側のテーブルのデータを全部残し、一致するものがなければNULLで埋めます。
サンプルコードでは、貸出記録のない「はなこ」も含めて全生徒を表示したいため、LEFT JOINを使っています。もしINNER JOINを使っていたら、貸出記録のないはなこは結果から除外されてしまう、という違いをコメントと合わせて確認してみましょう。
初心者がよくつまずくのが、この2つのJOINの選択を誤ることです。「関連するデータがある行だけでよいのか」「関連するデータがなくても元の行はすべて残したいのか」を、要件に応じて事前に考えておく必要があります。
「貸出記録のない生徒も含めて全員を一覧表示したい」ときはLEFT JOINが必要です。JOINの種類を正しく選べないと、意図せずデータが欠けてしまうことがあるため、違いをしっかり理解しておくことが重要です。
SQL
OUTPUT / 実行結果
💡 初回実行時はSQLエンジンの読み込みに数秒かかります。
🎯
ここまでできればゴール達成!
該当データがない場合も含めて結合できる、柔軟な結合ができるようになります。
該当データがない場合も含めて結合できる、柔軟な結合ができるようになります。
広告スペース(バナー)
広告スペース(記事内)