■ はじめに
https://dk521123.hatenablog.com/entry/2010/08/06/111640
の続き。過去記事を整理。 SQL のIN句 / NOT IN句を扱う
【1】IN句 / NOT IN句
* 「値1 か 値2 か ・・・・ のどれかに合う」データを返す * 指定した条件が、対象項目に入ってるかどうかを判定できる * 例えば、「全国の都道府県から、関東を抜き出して」ってことができる * 「IN」は「OR」と同じ意味であるが、構文が分かり易くなる
【2】構文
-- IN句 SELECT [項目] FROM [テーブル名] WHERE [対象項目] IN (条件1, 条件2, ...) /* ★ここ注目★ */ -- NOT IN句 SELECT [項目] FROM [テーブル名] WHERE [対象項目] NOT IN (条件1, 条件2, ...)
1)複数項目時
https://qiita.com/lithtle/items/4517785c67843f601443
SELECT [項目] FROM [テーブル名] WHERE (列名, 列名, ...) IN (条件1, 条件2 ... )
【3】サンプル
1)Hello world
SELECT * FROM testTable WHERE prefectureName IN ('Tokyo', 'Kanagawa', 'Chiba', 'Saitama', 'Gunma', 'Ibaraki', 'Tochigi');
2)複数項目指定時
SELECT * FROM person WHERE id, date IN (SELECT id, date FROM member) ;
【4】使用上の注意
* パフォーマンス(今は大した問題じゃないと思うが)。
パフォーマンスの良いSQLを記述 ~検索条件編~
https://dk521123.hatenablog.com/entry/2012/05/05/003504
関連記事
SQL ~ BETWEEN句 ~
https://dk521123.hatenablog.com/entry/2010/08/06/111640
SQL ~ HAVING句 ~
https://dk521123.hatenablog.com/entry/2010/07/13/154947
Window関数 ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/02/22/000000
グループ内のMAXデータを取得する
https://dk521123.hatenablog.com/entry/2018/10/06/230841
SQL ~ 関係演算 / 集合論 ~
https://dk521123.hatenablog.com/entry/2023/01/16/000000
SQLを書くコツ
https://dk521123.hatenablog.com/entry/2016/01/11/173055
パフォーマンスの良いSQLを記述 ~検索条件編~
https://dk521123.hatenablog.com/entry/2012/05/05/003504