指定した値のいずれかに一致したものを抽出するには、IN句を使用します。
構文
IN句には、①値を指定 ②SQL文を指定の2つの方法があります。
- (①値を指定する場合)
- IN('値1' [,'値2' ...])
- (②SELECT文を指定する場合)
- IN(<SQL文>)
サンプル
以下テーブルをサンプルとします。
cd | name | dept |
---|---|---|
001 | 鈴木 | 30 |
002 | 斎藤 | 10 |
003 | 山下 | 10 |
004 | 田川 | 40 |
005 | 高橋 | 20 |
cd | deptname |
---|---|
20 | 総務部 |
30 | 経理部 |
例)部署が10と20の人を抽出する
1 2 |
SELECT * FROM M_SHAIN WHERE DEPT IN ('10', '20'); |
- 結果
- CD NAME DEPT ----- ------- ----- 002 斎藤 10 003 山下 10 005 高橋 20
例)M_DEPTに定義されている部署のみ抽出する
1 2 |
SELECT * FROM M_SHAIN WHERE DEPT IN (SELECT CD FROM M_DEPT); |
- 結果
- CD NAME DEPT ----- ------- ----- 001 斎藤 10 005 高橋 20
メモ
- IN句はWHERE句内に使えます。
- IN句の値には、文字型や数値型など指定できます。