MySQLBETWEEN演算子_
MySQLBETWEEN演算子
演算子は、指定された範囲内のBETWEEN
値を選択します。値は、数値、テキスト、または日付にすることができます。
BETWEEN
演算子は包括的です。開始値と終了値が含まれます。
BETWEEN構文
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 |
例の間
次のSQLステートメントは、価格が10〜20のすべての製品を選択します。
例
SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20;
例の間ではありません
前の例の範囲外の製品を表示するには、次を使用します
NOT BETWEEN
。
例
SELECT * FROM Products
WHERE Price NOT BETWEEN 10 AND 20;
INの例との間
次のSQLステートメントは、価格が10〜20のすべての製品を選択します。カテゴリIDが1、2、または3の商品は表示されません。
例
SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20
AND CategoryID NOT IN (1,2,3);
テキスト値の例の間
次のSQLステートメントは、ProductNameが「CarnarvonTigers」と「MozzarelladiGiovanni」の間にあるすべての製品を選択します。
例
SELECT * FROM Products
WHERE ProductName BETWEEN 'Carnarvon Tigers' AND 'Mozzarella
di Giovanni'
ORDER BY ProductName;
次のSQLステートメントは、ProductNameが「CarnarvonTigers」と「ChefAnton'sCajunSeasoning」の間にあるすべての製品を選択します。
例
SELECT * FROM Products
WHERE ProductName BETWEEN "Carnarvon Tigers" AND
"Chef Anton's Cajun Seasoning"
ORDER BY ProductName;
テキスト値の例の間ではありません
次のSQLステートメントは、ProductNameが「CarnarvonTigers」と「MozzarelladiGiovanni」の間にないすべての製品を選択します。
例
SELECT * FROM Products
WHERE ProductName NOT BETWEEN 'Carnarvon Tigers' AND 'Mozzarella
di Giovanni'
ORDER BY ProductName;
サンプルテーブル
以下は、Northwindサンプルデータベースの「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 |
日付の例の間
次のSQLステートメントは、OrderDateが「01-July-1996」から「31-July-1996」のすべての注文を選択します。
例
SELECT * FROM Orders
WHERE OrderDate BETWEEN '1996-07-01' AND '1996-07-31';