El operador BETWEEN en SQL selecciona valores dentro de un rango dado. Los valores pueden ser números, texto o fechas. El operador BETWEEN es inclusivo: se incluyen los valores de inicio y finalización, esto quiere decir que se seleccionan solamente los valores que están entre los valores que establezcamos en el operador between.
SELECT nombre_columna(s) FROM nombre_tabla WHERE nombre_columna BETWEEN valor1 AND valor2;
Ejemplo de BETWEEN en una condición
A continuación mostramos como realizar una consulta SQL utilizando el operador BETWEEN dentro de la condición WHERE.
SELECT * FROM Productos WHERE Precio BETWEEN 5 AND 15;
Ejemplo NOT BETWEEN
Para mostrar los productos fuera del rango del ejemplo anterior, puedes utilizar el operador NOT BETWEEN, para seleccionar los valores que NO estén en ese rango:
SELECT * FROM Productos WHERE Precio NOT BETWEEN 5 AND 15;
Ejemplo BETWEEN con IN
A continuación se muestra una consulta SQL, combinando el operador BETWEEN y el operador IN dentro de la cláusula WHERE.
SELECT * FROM Productos WHERE (Precio BETWEEN 5 AND 15) AND NOT CategoriaID IN (1,2,3);
Ejemplo BETWEEN con valores de texto
La siguiente sentencia SQL selecciona todos los productos con un Nombre_Producto entre ‘Pasta Italiana’ y ‘Pizza’
SELECT * FROM Productos WHERE NombreProducto BETWEEN 'Pasta Italiana' AND 'Pizza' ORDER BY NombreProducto;
NOT BETWEEN con valores de texto
La siguiente declaración SQL selecciona todos los productos con un NombreProducto no esté entre ‘Pasta Italiana’ y ‘Pizza’:
SELECT * FROM Productos WHERE NombreProducto NOT BETWEEN 'Pasta Italiana' AND 'Pizza' ORDER BY NombreProducto;