サブクエリ 【subquery】 副問い合わせ

概要

サブクエリ(subquery)とは、データベースなどの問い合わせ(クエリ)文の内部に含まれる、別の問い合わせ文のこと。サブクエリの結果を反映したクエリを実行することができる。

よく用いられるのはSQLSELECT文を利用したサブクエリで、SELECT文や他の様々な文の中に別のSELECT文をサブクエリとして埋め込み、その実行結果を条件や対象を記述する際の値として利用する。サブクエリ中の条件などの記述にさらにサブクエリを用いて、何段階も入れ子(ネスト)状にすることもできる。

条件としてサブクエリの結果と特定の値の一致や大小比較を記述する場合はサブクエリの結果が必ず単一に定まる必要があるが、INやALLなどの演算子を用いて「いずれかが一致する」など複数の結果を扱う条件を記述することもできる。

サブクエリを用いるとデータをいったん制御プログラムに引き取って処理しなくても、一つのクエリの記述・実行だけで多様な処理を行うことができるが、処理の負荷が大きく実行に時間がかかることが多い。

(2020.6.26更新)