SQLServer WHERE 複数の値を検索 INの使い方

SQLServerの条件で、複数の値を一度に指定し、検索をするには、INを使用します。

INの使用方法は、WHERE での "=イコール"のかわりに"IN ()"を使用するだけです。

IN 複数の値の検索方法

INの使い方を見てみましょう。

SELECT
  項目
 ,項目
FROM
  テーブル名
WHERE
  項目 IN (値,値,値・・・)

 

サンプル

SELECT 
  id
 ,nickName
 ,animal
FROM
  hironimoTable
WHERE
  animal IN ('きりん','いぬ')

 

結果

元データ

id nickName animal
1 たなか いぬ
2 すずき ねこ
3 さとう ぞう
4 なかむら きりん

INで取得したデータ

id nickName animal
1 たなか いぬ
4 なかむら きりん

 

指定した値以外のデータを取得

先ほどINで複数の値を指定して、データを抽出しましたが、次は指定した複数の値以外のデータを取得してみましょう。

指定した複数の値、以外のデータを取得したい時は、NOT IN() を使用します。

INの使い方を見てみましょう。

SELECT
  項目
 ,項目
FROM
  テーブル名
WHERE
  項目 NOT IN (値,値,値・・・)

 

サンプル

SELECT 
  id
 ,nickName
 ,animal
FROM
  hironimoTable
WHERE
  animal NOT IN ('きりん','いぬ')

 

結果

元データ

id nickName animal
1 たなか いぬ
2 すずき ねこ
3 さとう ぞう
4 なかむら きりん

NOT INで取得したデータ

id nickName animal
2 すずき ねこ
3 さとう ぞう

 

まとめ

SQLの条件式で、複数の値を指定する時は、INを使いましょう。

ORをたくさん書く必要はありません。よく使うので、覚えておきましょう。

 

SQLServerの記事一覧

 

おすすめの記事