SQL(SELECT文・結合)とは?えすきゅーえる
SQL(SELECT文・結合)とは、関係データベースに「どのデータを取り出すか」を指示する言語がSQLで、その検索命令がSELECT文である。SELECTで取り出す列、FROMで対象の表、WHEREで行の条件を指定し、2つの表を共通の列でつなぐ操作をJOIN(結合)と呼ぶ。内部結合は両方の表に相手が見つかった行だけを返し、外部結合は片方にしか無い行も残す。
最終更新:2026-10-09
基本情報を最短で暗記・合格する →背景
表が1枚で済むなら結合は要らないが、正規化で「学生」と「学部」のように表を分けると、学部名を知りたいときに2枚を突き合わせる操作が必ず必要になる。手続き型の言語で1行ずつ突き合わせるコードを書く代わりに、欲しい結果だけを宣言的に書けるのがSQLの利点である。SQLは科目Aの範囲で、SELECT文の穴埋めや、結合の種類によって結果の行数がどう変わるかが問われる(科目Bはアルゴリズムとプログラミング・情報セキュリティで、SQLは出ない)。
具体例
大学の履修管理なら、学生表(学籍番号・氏名)と履修表(学籍番号・科目名)を学籍番号でINNER JOINすると、履修登録した学生だけが並ぶ。LEFT OUTER JOINにすると、まだ何も履修していない学生も氏名付きで残り、科目名の欄はNULL(値なし)になる。MySQLやPostgreSQLを入れればそのまま試せる。
試験での引っ掛け
INNER JOINとLEFT/RIGHT/FULL OUTER JOINで結果の行数がどう変わるかが定番。外部結合は相手が無い行もNULLを補って残すので、内部結合より行数が減ることはない。またWHEREは「行」の絞り込みで、「列」を絞るのはSELECTの列指定。この2つを取り違えた選択肢が置かれる。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。