curso
Como usar o operador BETWEEN do SQL
O operador SQL BETWEEN
é uma ferramenta para filtrar valores em um intervalo específico. Ele está incluído na declaração SELECT
para simplificar e melhorar a legibilidade da consulta.
Se você é novo no SQL, recomendo que faça os cursos Introduction to SQL e SQL Fundamentals para dar o pontapé inicial no aprendizado do SQL e se tornar um analista qualificado.
A resposta curta: O que é o operador BETWEEN do SQL?
O operador BETWEEN
filtra e retorna linhas em um conjunto de dados dentro de um determinado intervalo. Quando incluído na instrução SELECT
, o operador BETWEEN
retorna os valores de início e fim fornecidos. Esse poderoso operador pode retornar valores em vários tipos de dados SQL, incluindo datas, dados numéricos e de cadeia de caracteres.
No exemplo abaixo, a consulta é usada para selecionar todos os registros de funcionários cujos salários estão entre 50.000 e 60.000 na tabela employees
. Lembre-se de que o operador BETWEEN
é inclusivo, portanto, 50.000 e 60.000 serão incluídos no 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;
Sintaxe do operador BETWEEN do SQL
O operador BETWEEN
tem uma sintaxe simples na instrução SELECT
para filtrar os valores. É usado na cláusula WHERE
para especificar os limites inferior e superior do intervalo de dados que está sendo filtrado.
-- 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;
A folha de dicas básicas de SQL da DataCamp também será útil se você quiser consultar a sintaxe de operadores comuns, incluindo BETWEEN.
Pontos importantes a serem lembrados sobre o SQL BETWEEN
Ao usar o operador BETWEEN
, é importante observar que ele é colocado na cláusula WHERE
da declaração SELECT
. Esse posicionamento garante que o operador BETWEEN
filtre a coluna destacada pela 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;
O operador BETWEEN
é o preferido para filtrar valores dentro de intervalos, pois oferece filtragem concisa de dados. A sintaxe é simples e melhora a legibilidade da consulta ao filtrar várias condições.
Sem o operador BETWEEN
, usamos outros operadores para obter resultados semelhantes. Observe a inclusão dos operadores na cláusula WHERE
, o que torna a consulta menos legível e complexa.
-- 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;
A consulta fica mais legível e fácil de entender com o 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;
Lembre-se sempre de que os valores especificados no operador BETWEEN
estão incluídos nos resultados. A consulta SQL retornará registros em que os valores são incluídos como limites superior e inferior dos dados.
Casos de uso comuns de SQL BETWEEN
O operador BETWEEN
tem diferentes casos de uso na filtragem de dados, inclusive filtragem de intervalos numéricos ou de datas. Vamos dar uma olhada.
Filtragem de intervalos numéricos com BETWEEN
O operador BETWEEN
é comumente usado para filtrar dados numéricos. Nesse cenário, você pode filtrar os dados para recuperar aqueles que estão dentro de um determinado intervalo. No exemplo abaixo, filtramos a tabela de funcionários para que você retorne as linhas com salários entre 62.000 e 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;
Filtragem de intervalos de datas com BETWEEN
O operador BETWEEN
também pode filtrar registros dentro de determinados intervalos de datas. Esse aplicativo é útil para analisar dados com valores de data e hora.
Supondo que tenhamos uma coluna chamada hire_date
em nossa tabela employees
, podemos usar o operador BETWEEN
para filtrar as datas e encontrar registros de funcionários contratados em um período específico.
-- 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';
Combinação de BETWEEN com outros operadores
Você também pode combinar o operador BETWEEN
com outros operadores para obter cenários de filtragem complexos. Essa técnica é importante se você quiser uma filtragem específica. No exemplo abaixo, usamos o operador equal (=
) na cláusula WHEN
para filtrar as linhas que contêm apenas o departamento de vendas. Em seguida, a consulta usa o operador BETWEEN
para filtrar ainda mais os registros, incluindo os salários entre 50.000 e 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;
Recomendo que você navegue pela coleção de cursos de SQL da DataCamp para encontrar o curso certo para você.
Limitações do comando SQL Between
Por fim, vamos dar uma olhada em algumas limitações e alternativas.
Limitações do operador BETWEEN no SQL
As possíveis limitações do operador SQL BETWEEN
incluem:
- Possível confusão dos limites de inclusão: Como o operador
BETWEEN
inclui os valores especificados como limites superior e inferior, ele pode gerar confusão ou resultados inesperados se for usado incorretamente. - Problemas de desempenho com grandes conjuntos de dados: O uso do operador
BETWEEN
sem especificar os índices pode levar a problemas de desempenho, especialmente quando você usa conjuntos de dados grandes.
Alternativas ao operador BETWEEN no SQL
Como o operador BETWEEN
inclui os valores especificados como limites inferior e superior, podemos usar os operadores menor que (<
) e maior que (>
) para obter uma filtragem exclusiva. Essa técnica garantirá que esses valores não sejam incluídos nos 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;
Conclusão
O operador BETWEEN
no SQL é útil para filtrar valores dentro de determinados intervalos. Para os analistas de dados, é importante entender a importância de usar o operador BETWEEN
para filtragem e manipulação de dados. Incentivo você a continuar praticando o operador BETWEEN
usando diferentes conjuntos de dados para diferentes tipos de dados SQL para aprimorar suas habilidades em SQL.
O aprendizado contínuo ajudará você a se destacar entre os demais no campo profissional. Incentivo você a fazer o curso mais avançado Reporting in SQL e a considerar o abrangente programa de carreira Associate Data Analyst in SQL. Por fim, a DataCamp também oferece uma Certificação de Associado SQL para ajudar a mostrar a você suas conquistas profissionais no uso do SQL para análise de dados.
Perguntas frequentes
O que o operador BETWEEN do SQL faz?
O operador SQL BETWEEN
filtra os dados em um intervalo de valores.
Como você usa o operador BETWEEN do SQL?
O operador SQL BETWEEN
é usado na cláusula WHERE
para filtrar os dados da coluna especificada.
Quais tipos de dados SQL posso usar com o operador BETWEEN?
O operador BETWEEN
pode ser usado com diferentes tipos de dados, inclusive datas, numéricos e de cadeia de caracteres.
Posso usar o operador BETWEEN com outros operadores?
Você pode incluir outros operadores na cláusula WHERE
antes do operador BETWEEN
para filtragem avançada.
Que alternativas devo usar para excluir alguns registros dos meus dados?
Você deve usar o >
e <
para evitar que você obtenha os valores de limite inferior e superior ao usar o operador SQL BETWEEN
do SQL.
Aprenda SQL com a DataCamp
curso
Unindo dados no SQL
curso