Curso
El operador SQL BETWEEN es una herramienta para filtrar valores dentro de un rango determinado. Se incluye en la declaración SELECT para simplificar y mejorar la legibilidad de la consulta.
Si eres nuevo en SQL, te animo a que sigas los cursos Introducción a SQL y Fundamentos de SQL para poner en marcha tu aprendizaje de SQL y convertirte en un analista experto.
La respuesta breve: ¿Qué es el operador SQL ENTRE?
El operador BETWEEN filtra y devuelve las filas de un conjunto de datos dentro de un rango determinado. Cuando se incluye en la sentencia SELECT, el operador BETWEEN devuelve los valores inicial y final dados. Este potente operador puede devolver valores dentro de varios tipos de datos SQL, incluidos datos de fechas, numéricos y de cadena.
En el ejemplo siguiente, la consulta se utiliza para seleccionar todos los registros de empleados cuyos salarios estén entre 50.000 y 60.000 de la tabla employees. Recuerda que el operador BETWEEN es inclusivo, por lo que tanto 50.000 como 60.000 se incluirán en el resultado.
-- Select all columns from the Employees table
SELECT *
FROM employees
-- Filter the results to include only employees with salaries between 50,000 and 60,000
WHERE salary BETWEEN 50000 AND 60000;
Sintaxis del operador SQL BETWEEN
El operador BETWEEN tiene una sintaxis sencilla en la declaración SELECT para filtrar los valores. Se utiliza dentro de la cláusula WHERE para especificar los límites inferior y superior del rango de datos que se está filtrando.
-- Select the specified columns from the table
SELECT column_name(s)
FROM table_name
-- Filter the results to include only those where column_name values fall between (inclusive)
WHERE column_name BETWEEN value1 AND value2;
La hoja de trucos de SQL Básico de DataCamp también te resultará útil si quieres consultar la sintaxis de los operadores más comunes, incluido ENTRE.
Puntos importantes a recordar sobre SQL BETWEEN
Cuando utilices el operador BETWEEN, es importante que tengas en cuenta que se coloca en la cláusula WHERE de la declaración SELECT. Esta colocación garantiza que el operador BETWEEN filtre la columna resaltada por la cláusula WHERE.
-- Select all columns from the Employees table
SELECT *
FROM employees
-- Filter the results to include only employees with employeee_id between 10 and 18
WHERE employee_id BETWEEN 10 AND 18;
El operador BETWEEN es preferible para filtrar valores dentro de rangos, ya que proporciona un filtrado conciso de los datos. La sintaxis es sencilla y mejora la legibilidad de la consulta cuando se filtran varias condiciones.
Sin el operador BETWEEN, utilizamos otros operadores para conseguir resultados similares. Observa la inclusión de los operadores en la cláusula WHERE, que hace la consulta menos legible y compleja.
-- Select the first name, last name, and salary columns from the Employees table
SELECT first_name, last_name, salary
FROM employees
-- Filter the results to include only those employees whose salary is greater than or equal to 50,000
-- and less than or equal to 60,000
WHERE salary >= 50000 AND salary <= 60000;
La consulta es más legible y fácil de entender con el operador BETWEEN.
-- Select the first name, last name, and salary columns from the Employees table
SELECT first_name, last_name, salary
FROM employees
-- Filter the results to include only those employees whose salary is between 50,000 and 60,000 (inclusive)
WHERE salary BETWEEN 50000 AND 60000;
Recuerda siempre que los valores especificados en el operador BETWEEN se incluyen en los resultados. La consulta SQL devolverá registros en los que los valores se incluyen como límites superior e inferior de los datos.
Casos de uso habituales de SQL BETWEEN
El operador BETWEEN tiene diferentes casos de uso al filtrar datos, incluido el filtrado de rangos numéricos o de fechas. Echemos un vistazo.
Filtrar rangos numéricos con ENTRE
El operador BETWEEN se utiliza habitualmente para filtrar datos numéricos. En este escenario, puedes filtrar los datos para recuperar los que estén dentro de un determinado rango. En el ejemplo siguiente, filtramos la tabla de empleados para devolver filas con salarios entre 62.000 y 70.000.
-- Select all columns from employees table
SELECT *
FROM employees
-- Filter the results to include only those employees whose salary is between 62,000 and 70,000 (inclusive)
WHERE salary BETWEEN 62000 AND 70000;
Filtrar intervalos de fechas con ENTRE
El operador BETWEEN también puede filtrar registros dentro de determinados intervalos de fechas. Esta aplicación es útil para analizar datos con valores de fecha y hora.
Suponiendo que tenemos una columna llamada hire_date en nuestra tabla employees, podemos utilizar el operador BETWEEN para filtrar las fechas y encontrar registros de empleados contratados dentro de un periodo concreto.
-- Select all columns from employees table
SELECT *
FROM employees
-- Filter records where hire date is between January 1, 2022, and December 31, 2022 (inclusive)
WHERE hire_date BETWEEN '2022-01-01' AND '2022-12-31';
Combinar ENTRE con otros operadores
También puedes combinar el operador BETWEEN con otros operadores para conseguir escenarios de filtrado complejos. Esta técnica es importante si quieres un filtrado específico. En el ejemplo siguiente, hemos utilizado el operador igual (=) en la cláusula WHEN para filtrar las filas que sólo contienen el departamento de Ventas. A continuación, la consulta utiliza el operador BETWEEN para filtrar aún más los registros, incluyendo los salarios entre 50.000 y 60.000.
-- Select all columns from employees table
SELECT *
FROM employees
-- Filter records where department is 'Sales' and salary is between 50,000 and 60,000 (inclusive)
WHERE department = 'Sales' AND salary BETWEEN 50000 AND 60000;
Te recomiendo que eches un vistazo a la colección de cursos de SQL de DataCamp para encontrar un curso adecuado para ti.
Limitaciones del comando SQL Between
Por último, veamos algunas limitaciones y alternativas.
Limitaciones del operador BETWEEN en SQL
Las posibles limitaciones del operador SQL BETWEEN incluyen:
- Posible confusión de los límites inclusivos: Como el operador
BETWEENincluye los valores especificados como límites superior e inferior, podría dar lugar a confusiones o resultados inesperados si se utiliza incorrectamente. - Problemas de rendimiento con grandes conjuntos de datos: Utilizar el operador
BETWEENsin especificar los índices podría provocar problemas de rendimiento, especialmente cuando se utilizan conjuntos de datos grandes.
Alternativas al operador BETWEEN en SQL
Como el operador BETWEEN incluye los valores especificados como límites inferior y superior, podemos utilizar los operadores menor que (<) y mayor que (>) para conseguir un filtrado exclusivo. Esta técnica garantizará que estos valores no se incluyan en los resultados.
-- Select the first name, last name, and salary columns from the Employees table
SELECT first_name, last_name, salary
FROM employees
-- Filter the results to include only those employees whose salary is greater than 50,000
-- and less than 60,000 (exclusive)
WHERE salary > 50000 AND salary < 60000;
Conclusión
El operador BETWEEN en SQL es útil para filtrar valores dentro de rangos determinados. Comprender la importancia de utilizar el operador BETWEEN para filtrar y manipular datos es importante para los analistas de datos. Te animo a que sigas practicando el operador BETWEEN utilizando diferentes conjuntos de datos para distintos tipos de datos SQL, con el fin de mejorar tus habilidades SQL.
El aprendizaje continuo te ayudará a destacar entre los demás en el ámbito profesional. Te animo a que realices el curso más avanzado de Informes en SQL y a que consideres la posibilidad de realizar la carrera completa de Analista de Datos Asociado en SQL. Por último, DataCamp también ofrece una Certificación de Asociado SQL para ayudar a demostrar tus logros profesionales en el uso de SQL para el análisis de datos.
Preguntas frecuentes
¿Qué hace el operador SQL BETWEEN?
El operador SQL BETWEEN filtra los datos dentro de un rango de valores.
¿Cómo se utiliza el operador SQL BETWEEN?
El operador BETWEEN se utiliza dentro de la cláusula WHERE para filtrar los datos de la columna especificada.
¿Qué tipos de datos SQL puedo utilizar con el operador ENTRE?
El operador BETWEEN puede utilizarse con distintos tipos de datos, como fechas, números y cadenas.
¿Puedo utilizar el operador ENTRE con otros operadores?
Puedes incluir otros operadores en la cláusula WHERE antes del operador BETWEEN para un filtrado avanzado.
¿Qué alternativas debo utilizar para excluir algunos registros de mis datos?
Debes utilizar los botones > y < para evitar obtener los valores límite inferior y superior al utilizar el operador SQL BETWEEN de SQL.

