情報処理安全確保支援士暗記無料で始める

相関副問合せとEXISTSとは?そうかんふくといあわせとえぐじすつ

相関副問合せとEXISTSとは、内側の問合せが外側の行の列を参照する形式が相関副問合せ。外側の1行ごとに内側が評価されるため、その行に対応するデータがあるかどうかを行単位で判定できる。EXISTSは副問合せが1行でも返せば真になる述語で、この相関形式と組み合わせて使うのが定型である。

最終更新:2026-10-06

試験情報

情報処理安全確保支援士試験の過去問では1回出題されています。

情報処理安全確保支援士試験の頻出用語/午前II

別名:EXISTS

この語が出る過去問を解く →

背景

受注のある顧客を求めるだけなら結合やINでも書けるが、件数の多い表では対応する行をすべて取り出してから重複を除く無駄が生じる。知りたいのは有無だけで中身ではない、という場面があるため、1行見つかった時点で判定を打ち切れる述語が用意された。1件も無いことを素直に書けることも、この形式が選ばれる理由になる。

具体例

受注実績のある顧客だけを取り出すなら「SELECT * FROM 顧客 C WHERE EXISTS (SELECT 1 FROM 受注 O WHERE O.顧客番号 = C.顧客番号)」と書く。内側は顧客1行ごとに実行され、該当が1件見つかった時点で真が確定する。NOT EXISTSに変えれば、一度も受注が無い顧客の抽出になる。

試験での引っ掛け

評価される回数が非相関のものと違う。非相関の副問合せは1回だけ評価されるのに対し、相関副問合せは外側の行ごとに評価される。EXISTSは行の有無しか見ないため、内側のSELECT句に * を書いても 1 を書いても結果は変わらない。NOT INがNULLで意図どおりに動かない場面でも、NOT EXISTSなら書けるという対比も問われる。

関連用語

出た過去問

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 試験では1回出題
  • 分野:午前II
  • 評価される回数が非相関のものと違う。