目次

範囲を指定した条件式 - BETWEEN 演算子の利用 - SQL

SQLで範囲を指定してレコードを検索する方法について紹介します。

概要

SQLで範囲を指定した条件にマッチするレコードを検索したい場合があります。
値の範囲を条件にする場合は、BETWEEN演算子を用います。

書式

SELECT ... WHERE (列名) BETWEEN (範囲開始値) AND (範囲終了値)

(列名)の値が(範囲開始値)以上(範囲終了値)のレコードを一致の条件にします。

メモ
値の範囲ではなく、特定の値(離散値)で検索したい場合は、IN演算子を利用します。IN演算子の使用方法についてはこちらの記事を参照してください。

次のテーブルを用意します。
products
idnamepricecategory
1Penguin250Bird
2Bear1050Mammal
3Duck150Bird
4Camel550Mammal
5Owl185Bird
6Whale880Mammal

SQL

以下のSQLを実行します。
select * from ProductsA where price between 250 and 880

解説

where price between 250 and 880 の条件によりpriceが250以上880以下のレコードを求めます。

結果

idnamepricecategory
1Penguin250Bird
4Camel550Mammal
6Whale880Mammal

#(caption="補足1"){{ 以下のSQLと等価になります。
select * from ProductsA where 250 <= price and price <= 880
]} #(caption="補足2"){{ 開始値より終了値のほうが大きい値である必要があります。
先の例で、下記のSQLを実行した場合は何も結果を返しません。
select * from ProductsA where price between 880 and 250
]}
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
最終更新日: 2023-03-28
作成日: 2014-08-12
iPentec all rights reserverd.