¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)
Cómo usar el operador BETWEEN en MySQL con ejemplos prácticos
Portada » Cómo usar el operador BETWEEN en MySQL con ejemplos prácticos
Anuncios
Publicidad

Cómo usar el operador BETWEEN en MySQL con ejemplos prácticos

En esta entrada aprenderás a utilizar el operador BETWEEN en MySQL. Para ello, trabajaremos con la base de datos tiendaonline, que ya hemos instalado en vídeos anteriores.

El operador BETWEEN se utiliza para filtrar registros dentro de un rango de valores, y puede aplicarse tanto a números como a fechas y texto. También es posible negarlo con NOT BETWEEN para obtener los valores que no cumplen el rango.


Paso 1: Seleccionar la base de datos

Primero nos aseguramos de estar en la base de datos correcta:

USE tiendaonline;

Paso 2: Consultar los datos de prueba

Mostramos todos los pedidos registrados:

SELECT * FROM pedidos;

Y todos los clientes:

SELECT * FROM clientes;

Esto nos da una visión clara de las columnas disponibles, como id_cliente, nombre, total, etc.


Paso 3: Relacionar clientes con pedidos

Para obtener los pedidos junto con el nombre del cliente que los realizó, utilizamos un INNER JOIN. La relación se establece entre:

  • id_cliente de la tabla clientes (clave primaria).
  • id_cliente de la tabla pedidos (clave foránea).
SELECT p.total, c.nombre  
FROM pedidos AS p 
INNER JOIN clientes AS c 
ON p.id_cliente = c.id_cliente;

👉 Este resultado muestra el nombre del cliente y el importe de cada pedido.


Paso 4: Usar BETWEEN en MySQL

El operador BETWEEN nos permite filtrar registros que estén dentro de un rango específico, incluyendo los valores de los extremos.

Ejemplo: mostrar los pedidos entre 120 y 540 euros:

SELECT p.total, c.nombre  
FROM pedidos AS p 
INNER JOIN clientes AS c 
ON p.id_cliente = c.id_cliente 
WHERE p.total BETWEEN 120.00 AND 540.00;

Paso 5: Usar NOT BETWEEN

Si lo que queremos es lo contrario, es decir, los pedidos que no estén dentro del rango, usamos NOT BETWEEN:

SELECT p.total, c.nombre  
FROM pedidos AS p 
INNER JOIN clientes AS c 
ON p.id_cliente = c.id_cliente 
WHERE p.total NOT BETWEEN 120.00 AND 540.00;

👉 Esta consulta muestra únicamente los pedidos menores a 120.00 o mayores a 540.00.


Ejemplo con fechas y BETWEEN

El operador BETWEEN también es muy útil al trabajar con fechas. Por ejemplo, si queremos listar todos los pedidos realizados entre el 1 de enero y el 31 de marzo de 2023:

SELECT p.id_pedido, p.fecha_pedido, c.nombre  
FROM pedidos AS p 
INNER JOIN clientes AS c 
ON p.id_cliente = c.id_cliente 
WHERE p.fecha_pedido BETWEEN '2023-01-01' AND '2023-03-31';

Esto devuelve todos los pedidos dentro de ese rango de fechas, incluyendo los extremos.


En este tutorial aprendiste a:

  • Relacionar tablas con INNER JOIN.
  • Usar BETWEEN para filtrar resultados dentro de un rango.
  • Usar NOT BETWEEN para excluir valores del rango.
  • Aplicar BETWEEN tanto a números como a fechas.

El operador BETWEEN es muy útil cuando necesitamos trabajar con rangos continuos, ya sea de importes, fechas o incluso texto (ordenado alfabéticamente).



En esta entrada vamos a trabajar con la base de datos tiendaonline, que ya hemos instalado en vídeos anteriores. Hacemos uso del operador BETWEEN en MySQL.

📌 Demostración en vídeo: Te mostramos paso a paso cómo aplicar BETWEEN y NOT BETWEEN en tus consultas SQL.

Preguntas frecuentes sobre BETWEEN en MySQL

1. ¿BETWEEN incluye los valores de los extremos?
Sí. Si consultas BETWEEN 120 AND 540, los resultados incluirán también los valores 120 y 540.

2. ¿Se puede usar BETWEEN con texto?
Sí. Por ejemplo:

SELECT nombre FROM clientes 
WHERE nombre BETWEEN 'A' AND 'M';

Esto devolverá los clientes cuyos nombres comienzan alfabéticamente entre "A" y "M".

3. ¿Qué diferencia hay entre BETWEEN y operadores lógicos (> y <)?
BETWEEN 100 AND 200 es equivalente a >= 100 AND <= 200, pero más legible y claro.

4. ¿Qué diferencia hay entre BETWEEN y IN?

  • BETWEEN busca valores en un rango continuo.
  • IN compara con una lista específica de valores.

5. ¿Se puede combinar BETWEEN con otras condiciones?
Sí. Por ejemplo:

SELECT * FROM pedidos 
WHERE total BETWEEN 200 AND 500 
  AND fecha_pedido BETWEEN '2023-01-01' AND '2023-06-30';

Esto selecciona pedidos dentro de un rango de totales y fechas al mismo tiempo.

Te puede interesar:

Seguir leyendo:

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)

Deja una respuesta

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)
error: Content is protected !!
Hablemos de informática
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.