Como usar BETWEEN para filtrar dados dentro de um intervalo?

O operador BETWEEN no SQL permite filtrar registros dentro de um intervalo de valores, incluindo números, datas e textos.

Como usar BETWEEN para filtrar dados dentro de um intervalo?

O operador BETWEEN no SQL é utilizado para selecionar registros dentro de um intervalo definido, sendo muito útil para consultas que envolvem números, datas ou valores textuais.

Usando BETWEEN com números

Se quisermos encontrar produtos com preços entre 100 e 500 reais:

SELECT * FROM produtos WHERE preco BETWEEN 100 AND 500;

Isso retorna todos os produtos cujo preço esteja entre 100 e 500, incluindo os limites.

Usando BETWEEN com datas

Para buscar pedidos realizados entre 1º de janeiro e 30 de junho de 2024:

SELECT * FROM pedidos WHERE data_compra BETWEEN '2024-01-01' AND '2024-06-30';

Isso retorna todos os pedidos feitos dentro desse período, incluindo as datas de início e fim.

Usando BETWEEN com valores textuais

Em alguns bancos de dados, o BETWEEN pode ser utilizado para comparar strings alfabeticamente:

SELECT * FROM clientes WHERE nome BETWEEN 'A' AND 'M';

Isso retorna clientes cujos nomes começam entre A e M, seguindo a ordenação do banco de dados.

Alternativa com operadores de comparação

O BETWEEN é equivalente a usar >= e <=:

SELECT * FROM produtos WHERE preco >= 100 AND preco <= 500;

Cuidados ao usar BETWEEN

  • BETWEEN inclui os valores extremos, então BETWEEN 10 AND 20 inclui 10 e 20.
  • Para intervalos de datas, certifique-se de que o formato esteja correto para evitar erros.
  • Se precisar excluir os extremos, use > menor_valor AND < maior_valor em vez de BETWEEN.

O operador BETWEEN no SQL é uma ferramenta eficiente para consultas que precisam filtrar dados dentro de um intervalo. Seja para analisar vendas em um período específico, buscar produtos dentro de uma faixa de preços ou filtrar registros com base em critérios alfabéticos, BETWEEN simplifica a sintaxe e melhora a legibilidade das consultas. No entanto, em bancos de dados grandes, é importante garantir que as colunas usadas com BETWEEN estejam indexadas para evitar problemas de performance. Além disso, quando se trabalha com datas, considerar o uso de horários junto com as datas pode evitar inconsistências nos filtros.

Algumas aplicações:

  • Filtragem de produtos dentro de uma faixa de preços
  • Consulta de registros em um intervalo de datas
  • Seleção de clientes cujos nomes começam com determinadas letras
  • Relatórios financeiros baseados em períodos específicos
  • Filtragem de pedidos por quantidade mínima e máxima

Dicas para quem está começando

  • Use BETWEEN quando precisar filtrar valores dentro de um intervalo
  • Lembre-se de que os valores extremos são incluídos no resultado
  • Para excluir os valores extremos, prefira > menor_valor AND < maior_valor
  • Se precisar filtrar datas, sempre teste os formatos aceitos pelo seu banco de dados
  • Para melhor desempenho, garanta que a coluna usada no BETWEEN esteja indexada

Contribuições de Rodrigo Martins

Compartilhe este tutorial: Como usar BETWEEN para filtrar dados dentro de um intervalo?

Compartilhe este tutorial

Continue aprendendo:

Como verificar se um campo está vazio no SQL?

Para verificar se um campo está vazio no SQL, utilizamos IS NULL para valores nulos e comparação com espaços em branco para strings vazias.

Tutorial anterior

Como usar aliases para renomear colunas ou tabelas?

Os aliases no SQL permitem atribuir nomes temporários a colunas e tabelas, facilitando a leitura e a organização dos resultados.

Próximo tutorial