表の結合(内部結合・外部結合)とは?ひょうのけつごう
表の結合(内部結合・外部結合)とは、複数の表を関連する列の値で突き合わせて1つの結果表にする操作。両表に対応する行があるものだけを返す内部結合と、片側に対応が無くてもNULL(値が無いことを表す印)を補って残す外部結合(LEFT・RIGHT・FULL)がある。どちらを使うかで件数と集計値が変わるため、要件の読み取りが要点になる。
最終更新:2026-10-10
基本情報を最短で暗記・合格する →背景
データは重複を避けるため、社員表と研修表のように項目ごとに別の表へ分けて持つ。このままでは「誰がどの研修を受けたか」を一度に見られず、必要なときに関連する列の値で表をつなぎ直す操作が欠かせない。ところが片側に相手の行が無いとき、残すか捨てるかで件数と集計が変わるため、両方を選べる内部結合と外部結合が用意された。
具体例
「全社員と、その社員が受講した研修」を出すとき、内部結合では未受講者が消えてしまう。社員表を左にしたLEFT OUTER JOIN(左側の表の行をすべて残す外部結合)にすれば未受講者も研修名NULLで残り、受講率の分母が正しくなる。逆に「受講実績の一覧」なら内部結合が正しい。
試験での引っ掛け
外部結合でNULLが補われる側(この例では研修表)の列に、WHERE句(結果を絞り込む条件)で「研修名 = '安全教育'」と条件を書くと、研修名がNULLの行(未受講者)が弾かれて内部結合と同じ結果に戻ってしまう。NULLが補われる側の条件はON句(結合のしかたを決める条件)へ書く必要がある。また結合条件を書き忘れると直積(クロス結合)になり件数が爆発する。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。