オペレータ間の範囲内の値を選択するために使用されます。
演算子BETWEEN SQL
オペレータ間の範囲内の値を選択します。 値は、数値、文字列、または日付することができます。
構文BETWEEN SQL
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
デモデータベース
このチュートリアルでは、よく知られているNorthwindサンプルデータベースを使用します。
下からの選択である"Products"テーブルには:
ProductID | ProductName | SupplierID | CategoryID | Unit | Price |
---|---|---|---|---|---|
1 | Chais | 1 | 1 | 10 boxes x 20 bags | 18 |
2 | Chang | 1 | 1 | 24 - 12 oz bottles | 19 |
3 | Aniseed Syrup | 1 | 2 | 12 - 550 ml bottles | 10 |
4 | Chef Anton's Cajun Seasoning | 1 | 2 | 48 - 6 oz jars | 22 |
5 | Chef Anton's Gumbo Mix | 1 | 2 | 36 boxes | 21.35 |
演算子例BETWEEN
次のSQL文は、10と20との間の価格ですべての製品を選択します。
NOT演算子例BETWEEN
前の例の範囲外の製品を表示するには、NOT BETWEENを使用します。
例では演算子BETWEEN
次のSQL文は、10と20との間の価格ですべての製品を選択するが、1,2、または3の区分を持つ製品が表示されません。
例
SELECT * FROM Products
WHERE (Price BETWEEN 10 AND 20)
AND NOT
CategoryID IN (1,2,3);
»それを自分で試してみてください
テキスト値例と演算子BETWEEN
次のSQL文では、とのすべての製品を選択し、 ProductName 'C'と'M' BETWEEN文字のいずれかで始まります:
NOTテキスト値例と演算子BETWEEN
次のSQL文は、NOT 'C'と 'M' BETWEEN文字のいずれかで始まる商品名ですべての製品を選択します。
サンプルテーブル
下からの選択である"Orders"テーブルには:
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10248 | 90 | 5 | 7/4/1996 | 3 |
10249 | 81 | 6 | 7/5/1996 | 1 |
10250 | 34 | 4 | 7/8/1996 | 2 |
10251 | 84 | 3 | 7/9/1996 | 1 |
10252 | 76 | 4 | 7/10/1996 | 2 |
日付値例と演算子BETWEEN
次のSQL文では、とのすべての注文を選択し、 OrderDate BETWEEN '04-July-1996'と'09-July-1996' :
BETWEEN演算子異なるデータベースに異なる結果を生成することができることに注意してください!
一部のデータベースでは、BETWEEN間、およびテスト値を除くあるフィールドを選択します。
他のデータベースでは、BETWEENの間および検査値を含むをされているフィールドを選択します。
そして、他のデータベースでは、BETWEENは、最初のテスト値を含む、最後のテスト値を除いたテスト値の間のフィールドを選択します。
したがって:データベースがBETWEEN演算子をどのように扱うかチェックしてください!