ywork2020.com

Title

値が指定範囲の間にあるかを判定する

目次 (INDEX)

BETWEEN とは

ここで説明する BETWEEN とは次の語句からなる SQL の演算子です。
between
読み: ビットウィン
意味: ~の間

目次に戻る

BETWEEN 演算子の概要

この演算子は、WHERE 句でレコード抽出条件を指定する際に「 値1 から 値2 の間 」に合致したレコードを抽出対象にできます。

目次に戻る

サンプル テーブルの構造

データ抽出用のサンプルテーブルが必要でしたので事前に作成しています。
ここではテーブル作成までのクエリを簡易的に書いておきます。

現在、データベースにはサンプルとして以下に示す構造の japan テーブルを作成しており、 そのテーブルに 47都道府県のデータを登録した状態になっています。

サンプルコード: テーブルの作成

サンプルテーブルを以下のクエリで作成しました。

CREATE TABLE japan(
	県番号 int(11),
	都道府県 varchar(10),
	県庁所在地 varchar(10),
	地方 varchar(10)
);
カラム1
(県番号)
カラム2
(都道府県)
カラム3
(県庁所在地)
カラム4
(地方)
データデータデータデータ
データデータデータデータ

目次に戻る

サンプルコードと実行結果

ここからは実際に稼働しているデータベースに接続してクエリを実行していきます。 下記に配置された各ボタンをクリックすると、ボタンに書かれているサンプルクエリを実行して結果を表示します。

サンプルコード: SQL (SELECT 文の基本的な使い方)

SELECT * FROM テーブル名;

これはテーブルデータを抽出するための基本構文です。
指定したテーブルのデータを全件、全フィールドで抽出します。 この単純なクエリはデータ量が少ない場合や開発段階では利用することが多いと思いますが、実際の運用では使いません。

実行:

サンプルコード: SQL (BETWEEN 演算子の使い方)

SELECT * FROM テーブル名 WHERE カラム名 BETWEEN 値の下限 AND 値の上限;
実行:

説明:
WHERE 句でデータ抽出の条件を指定する際に BETWEEN 演算子を使用した例です。
条件対象カラム名 BETWEEN 値1 AND 値2 と記述し、値1 ~ 値2 の範囲内に収まるレコードを抽出対象とします。

サンプルコード: SQL (BETWEEN 使わないで同じレコードを抽出する)

SELECT * FROM テーブル名 WHERE カラム名 >= 値の下限 AND カラム名 <= 値の上限;
実行:

説明:
BETWEEN 演算子を使用しないで同じ条件を満たすものを掲載しておきます。

目次に戻る

SQL の仕様上の注意点

※ SQL の予約句はアルファベットの大文字と小文字を区別しませんが、 任意で作成したデータベースやテーブル、カラムの名前などは区別されるので注意が必要です。

目次に戻る