C150 BETWEEN・IN・LIKE演算子

今回も前回に引き続き、SQLにおいて抽出する条件を指定する演算子についてです。今回は、BETWEEN演算子・IN演算子・LIKE演算子の3つを紹介します。

頻出演算子について

userテーブル

Idnameclassheight
1山田A165
2田中B171
3佐藤A180

BETWEEN演算子

BETWEEN演算子はWHERE句で使用します。カラム名 BETWEEN 下限値 AND 上限値 と記述し、範囲を指定することができます。WHERE句の中で下記の様に記載します。

SQL
SELECT	
  name
FROM	
  user
WHERE	
  height 
BETWEEN 160 AND 175

抽出結果

SQL
山田
田中

IN演算子

IN演算子は、引数として渡した値のリストのいずれかと一致しているかどうかを条件にしたい際に用いいます。

SQL
SELECT 
  name
FROM 
  user
WHERE
  name IN ('');

抽出結果

SQL
山田
田中

LIKE演算子

LIKE演算子は、対象の文字列が指定したパターンに一致しているかどうかという条件にしたい際に用います。%の位置により文字列の指定パターンが変わります。

SQL
SELECT 
  name
FROM 
  user
WHERE 
  name 
like '%田%';

/*
"%文字列%"でどこに含まれていても抽出する中間一致
"%文字列"で文字列で終わるものを抽出する後方一致
"文字列%"で文字列で始まるものを抽出する前方一致
*/

抽出結果

SQL
山田
田中

例題

下記コードにて抽出されるデータは下記のどれか

SQL
SELECT 
  name
FROM 
  user
WHERE 
  name 
like '田%';
  1. 山田
  2. 田中
  3. 山田田中
  4. 佐藤
回答

2. 田中

“田%”は”田”で始まるものを抽出するため。

---