【SQL入門】BETWEEN演算子による条件指定


本項では、BETWEEN演算子について説明していきます。


BETWEENの基本構文

範囲を指定して検索するには、比較演算子と論理演算子を使って記述することもできますが
BETWEEN演算子を使って記述することもできます。
構文は以下になります。

対象 BETWEEN 開始値 AND 終了値;

否定形の場合は下記になります。

対象 NOT BETWEEN 開始値 AND 終了値;

比較演算子と論理演算子を使って記述した場合は下記になります。

対象 >= 開始値 AND 対象<= 終了値;

否定形の場合は下記になります。

対象 < 開始値 AND 対象 > 終了値;

注意点としては、BETWEENを使った場合と使わなかった場合を見比べてもらえばわかるかと思いますが
BETWEENは、対象が開始値以上終了値以下なので、開始値や終了値と同等の場合も含みます。
逆に、否定形のNOT BETWEENはその逆で、開始値と終了値と同等の場合は含まれません。

では、実際にやってみましょう。
使用するテーブルは引き続き下記になります。

まずは、BETWEENで26歳から29歳の人のデータを抽出してみましょう。

SELECT *
FROM teachers
WHERE age BETWEEN 26 AND 29;

開始値と終了値も含んだ年齢が26~29歳の人のデータが抽出できました。

次に、NOTを付けて否定形でやってみます。

SELECT *
FROM teachers
WHERE age NOT BETWEEN 26 AND 29;

開始値と終了値を含まない、26~29歳以外の人のデータが抽出できたことが確認できました。


今回の学習ポイント

・BETWEEN演算子で範囲検索できる。
・BETWEENの検索結果には、開始値と終了値が含まれる。


練習問題

問題として使用するデータは「SQL練習問題」のものを使用しています。
以下からダウンロード可能です。
また、ダウンロードしたら以下のようにしてworldcup2014データベースを作成し、インポートしてください。
※worldcup2014.zip解凍してできるworldcup2014.sqlファイルをCドライブ直下に配置した場合。

worldcup2014.zip

CREATE DATABASE worldcup2014;

use worldcup2014

source C:\worldcup2014.sql
1.BETWEEN演算子を使用して生年月日(players.birth)が1995年代の選手のデータを抽出してください。

答え

2.BETWEEN演算子を使用して、体重が60kg未満100kg以上の選手を抽出してください。

答え
  • このエントリーをはてなブックマークに追加

PAGE TOP