El operador BETWEEN en SQL

El operador BETWEEN en SQL selecciona filas cuyo valor cae dentro de un intervalo, con un límite inferior y uno superior. Funciona con números, textos y fechas.

El operador BETWEEN en SQL es una pieza habitual del flujo SQL: consultar, filtrar, agrupar o modificar datos. Cada ejemplo usa tablas de demostración para que puedas experimentar sin riesgo.

Cómo practicar: ejecuta la consulta tal cual, revisa columnas y tipos, luego cambia un filtro o un alias y vuelve a ejecutar.

El intervalo es inclusivo: los valores de los extremos cuentan. Un precio BETWEEN 5 AND 15 incluye productos de exactamente 5 € y de exactamente 15 €. Es equivalente a escribir Precio >= 5 AND Precio <= 15 , pero BETWEEN suele leerse mejor cuando buscas un rango claro.

Con texto, SQL ordena alfabéticamente entre los dos límites; con números, compara magnitudes. En los ejemplos verás rangos de precios y de ventas por cliente en nuestra base de datos de demostración.

Sintaxis del operador BETWEEN

Plantilla BETWEEN

    SELECT nombre_columna(s)
FROM nombre_tabla
WHERE nombre_columna BETWEEN valor1 AND valor2;
  


BETWEEN con números en SQL

Productos con precio entre 5 y 15 euros. Los valores 5 y 15 forman parte del resultado:

Precios entre 5 y 15 €

    SELECT * 
FROM Productos
WHERE Precio BETWEEN  5 AND 15;
  
Abrir en editor

Resultado: productos con precio entre 5 y 15 € (por ejemplo, Té verde a 8,00 €).

Nombre_ProductoPrecio
Té verde8.00
Salsa de tomate3.20
Galletas de avena4.50
Queso manchego15.00
… 1 producto más en rango (4 en total)

Base de datos demo Productos para BETWEEN

Observa qué columnas devuelve la consulta y cómo se nombran con AS. Ese alias es lo que verás en la cuadrícula del editor.

ID_Producto Nombre_Producto Precio Stock
1Café expreso12.50120
2Té verde8.00200
3Salsa de tomate3.20340
4Galletas de avena4.50180
5Queso manchego15.0090
6Arroz integral2.80500
7Jamón serrano22.0060
8Manzanas Golden1.90400
9Salmón fresco18.5045
10Aceite de oliva9.90150
Tabla Productos en el editor SQL.


NOT BETWEEN en SQL

NOT BETWEEN devuelve lo que queda fuera del intervalo:

Precios fuera de 5–15 €

    SELECT * 
FROM Productos
WHERE Precio NOT BETWEEN 5 AND 15;
  
Abrir en editor

Ejemplo BETWEEN con IN (referencia)

Ejemplo ilustrativo de sintaxis; no hay ejercicio en el editor para esta combinación concreta.

Puedes combinar BETWEEN con otras condiciones (aquí, precio en rango y categoría fuera de una lista):

Ejemplo

    SELECT * 
FROM Productos
WHERE (Precio BETWEEN 5 AND 15)
AND ID_Categoria NOT IN (1, 2, 3);
  

Ejemplo BETWEEN con valores de texto (referencia)

Los nombres de producto coinciden con la base de datos de demostración del editor.

Con texto, el rango sigue el orden alfabético entre Arroz integral y Queso manchego:

Ejemplo

    SELECT * 
FROM Productos
WHERE Nombre_Producto BETWEEN 'Arroz integral' AND 'Queso manchego'
ORDER BY Nombre_Producto;
  

NOT BETWEEN con valores de texto

Productos cuyo nombre queda fuera de ese intervalo alfabético:

Ejemplo

    SELECT * 
FROM Productos
WHERE Nombre_Producto NOT BETWEEN 'Arroz integral' AND 'Queso manchego'
ORDER BY Nombre_Producto;
  


BETWEEN en la columna N_Ventas

El mismo operador sirve para cualquier columna numérica. Aquí, clientes con entre 50 y 100 ventas:

Base de datos demo Clientes para BETWEEN

La sintaxis indica el orden de argumentos y palabras clave. Copia la plantilla y sustituye nombres de columnas o literales entre comillas simples.

ID_Cliente Nombre_Cliente Ciudad Pais N_Ventas
1Ana GarcíaMadridEspaña120
2Luis PérezBarcelonaEspaña85
3María LópezValenciaEspaña200
4Carlos RuizMadridEspaña45
5Elena TorresSevillaEspaña67
6John SmithLondonUK150
7Marie DuboisParisFrancia92
8Hans MüllerBerlinAlemania78
9Luca RossiRomaItalia110
10Sofia AndersStockholmSuecia55
Tabla Clientes en el editor SQL (10 filas). Usada en el ejemplo de ventas con BETWEEN.

Ventas entre 50 y 100

    SELECT Nombre_Cliente, N_Ventas
FROM Clientes
WHERE N_Ventas BETWEEN 50 AND 100;
  
Abrir en editor

Resultado: clientes con entre 50 y 100 ventas (por ejemplo, Luis Pérez con 85).

Nombre_ClienteN_Ventas
Luis Pérez85
Elena Torres67
Marie Dubois92
Hans Müller78
Sofia Anders55

Resumen

  • BETWEEN selecciona un rango inclusivo (incluye extremos).
  • NOT BETWEEN excluye ese rango.
  • Funciona con números, texto y fechas.
  • Combínalo con AND y otras condiciones.

Comprueba lo aprendido

Responde 2–3 preguntas sobre esta lección. Verás ✓ en verde si aciertas o ✗ en rojo si fallas.