はじめに
初めて副問い合わせを使用する場面があったので知識の整理として記事にしました。
この記事でわかる・できること
- 副問い合わせとは何か
- 具体的な使用場面
この記事の対象者
- SQL文初心者
仮 SQL文 副問い合わせ
副問い合わせとは何か
副問い合わせとは、SQL文の中で別のSQL文をネスト(入れ子)して使用する方法です。副問い合わせを使うことで、複雑な条件を指定したり、実行時の条件や状況に応じてのデータ取得を行うことができます。
具体的な使用場面
2つのテーブル(ここではA,Bとする)からファイル作成のためのデータ抽出を行う際、以下のような抽出条件を指定する際に副問い合わせを使用しました。
【抽出条件】
Aテーブル.結果 = 正常 かつ Bテーブル.処理日>Aテーブル.処理日が存在しない
【SQL文】
SELECT 項目
FROM Aテーブル
WHERE 条件①
AND 条件②
AND 条件③
NOT EXISIT(Aテーブル.結果 = 正常 かつ Bテーブル
AND Bテーブル.処理日>Aテーブル.処理日)
おわりに
最近、設計書に記載されている抽出条件からSQL文を考える場面がありましたが、設計書から具体的なコードに落とし込むのは難しいですね。。(最初は単に結合すればできそうだと考えていました。)
基本的な文法を知ってできた気がしてましたが、今回は自分がどれほど理解していないかを知ることができました。