BETWEEN operator/construct = useful to match a value against a range of values.
The syntax is quite like this:
value_of_rows BETWEEN x AND y;
x and y are just end points and they are inclusive.
You can rewrite the same syntax from above without using BETWEEN as well:
value_of_rows >= x AND value_of_rows <= y;
Let’s take a look at the examples of both:
I am using the database available on my Github public repo
Example with BETWEEN:
SELECT product_name, unit_price
FROM products
WHERE unit_price
BETWEEN 40 AND 50;
//Output
product_name. unit_price
"Northwoods Cranberry Sauce" 40
"Schoggi Schokolade" 43.9
"Rössle Sauerkraut" 45.6
...
...
Example without BETWEEN
SELECT product_name, unit_price
FROM products
WHERE unit_price >= 40 AND unit_price <= 50;
//Output
product_name. unit_price
"Northwoods Cranberry Sauce" 40
"Schoggi Schokolade" 43.9
"Rössle Sauerkraut" 45.6
...
...
To get the values out of that range, all we need to do is add NOT.
Example with NOT BETWEEN:
SELECT product_name, unit_price
FROM products
WHERE unit_price
NOT BETWEEN 40 AND 50;
//Output
product_name. unit_price
"Chai" 18
"Chang" 19
"Aniseed Syrup" 10
...
...
You can achieve same results without using NOT BETWEEN as well:
Example without NOT BETWEEN:
SELECT product_name, unit_price
FROM products
WHERE unit_price < 40 OR unit_price > 50;
//Output
product_name. unit_price
"Chai" 18
"Chang" 19
"Aniseed Syrup" 10
...
...
Pay attention to the fact that, we needed to use OR to do so.
BETWEEN database sql operators sql query