bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths

Loading lesson path

Learn/SQL/SQL Tutorial
SQL•SQL Tutorial

SQL BETWEEN Operator

The SQL BETWEEN Operator

The BETWEEN operator is used in the WHERE clause to select values within a specified range.

The range is inclusive - the beginning and end values of the range are included in the results.

The values can be numbers, text, or dates.

Example

 SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20;

Syntax

SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2;

Demo Database

Below is a selection from the Products table used in the examples:

ProductIDProductNameSupplierIDCategoryIDUnitPrice
1Chais1110 boxes x 20 bags18.00
2Chang1124 - 12 oz bottles19.00
3Aniseed Syrup1212 - 550 ml bottles10.00
4Chef Anton's Cajun Seasoning2248 - 6 oz jars22.00
5Chef Anton's Gumbo Mix2236 boxes21.35

Not Between

The NOT BETWEEN operator is used in the WHERE clause to select values outside a specified range.

The following SQL returns all products with a price NOT between 10 and 20:

Example

 SELECT * FROM Products
WHERE Price NOT BETWEEN 10 AND 20;

BETWEEN with IN

The following SQL returns all products with a price between 10 and 20. In addition, the CategoryID must be either 1, 2 or 3:

Example

 SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20
AND CategoryID IN (1,2,3);

BETWEEN Text Values

The following SQL selects all products with a ProductName alphabetically between 'Geitost' and 'Louisiana Hot Spiced Okra':

Example

SELECT * FROM Products

WHERE ProductName BETWEEN 'Geitost' AND 'Louisiana Hot Spiced Okra'

ORDER BY ProductName;

NOT BETWEEN Text Values

The following SQL selects all products with a ProductName NOT between 'Geitost' and 'Louisiana Hot Spiced Okra':

Example

 SELECT * FROM Products
WHERE ProductName NOT BETWEEN 'Geitost' AND
  'Louisiana Hot Spiced Okra'
ORDER BY ProductName;

BETWEEN Dates

The BETWEEN operator is useful for filtering records within a specific date or time period. Ensure the date format matches the database (e.g. 'YYYY-MM-DD').

The following SQL selects all orders placed in July, 1996:

Example

SELECT * FROM Orders
WHERE OrderDate BETWEEN '1996-07-01' AND '1996-07-31';

Sample Table

Below is a selection from the Orders table used in the example above:

OrderIDCustomerIDEmployeeIDOrderDateShipperID
102489051996-07-043
102498161996-07-051
102503441996-07-082
102518431996-07-081
102527641996-07-092

Previous

SQL IN Operator

Next

SQL Aliases