Selecionar dados dentro de intervalos no SQL

click fraud protection

O Linguagem de consulta estruturada (SQL) fornece aos usuários de banco de dados a capacidade de criar consultas personalizadas para extrair informações de bancos de dados. Em um artigo anterior, exploramos a extração de informações de um banco de dados usando consultas SQL SELECT. Vamos expandir essa discussão e explorar como você pode executar tarefas avançadas consultas para recuperar dados que corresponde a condições específicas.

Vamos considerar um exemplo baseado no comumente usado Vento Norte banco de dados, que frequentemente é fornecido com produtos de banco de dados como um tutorial.

Aqui está um trecho da tabela Product do banco de dados:

ID do produto Nome do Produto Identificação do Fornecedor QuantityPerUnit Preço unitário Unidades em estoque
1 Chai 1 10 caixas x 20 sacos 18.00 39
2 Chang 1 Garrafas de 24 - 12 onças 19.00 17
3 Xarope de Anis 1 12 - garrafas de 550 ml 10.00 13
4 Tempero Cajun do Chef Anton 2 Potes de 48 - 6 onças 22.00 53
5 Mix de Gumbo do Chef Anton 2 36 caixas 21.35 0
6 Spread de Boysenberry da Vovó 3 Potes de 12 a 8 onças 25.00 120
7 Peras Secas Orgânicas do Tio Bob 3 12 - 1 lb pkgs. 30.00 15
instagram viewer
Tabela de Produtos

Condições Limite Simples

As primeiras restrições que colocaremos em nossa consulta envolvem condições de contorno simples. Podemos especificá-los na cláusula WHERE da consulta SELECT, usando instruções de condição simples construídas com operadores padrão, como ,> = e <=.

Primeiro, vamos tentar uma consulta simples que nos permite extrair uma lista de todos os produtos no banco de dados que têm um Preço Unitário de mais de 20,00:

SELECIONE Nome do Produto, PreçoUnitário
DE produtos
ONDE Preço unitário> 20,00

Isso produz uma lista de quatro produtos, conforme mostrado abaixo:

ProductName UnitPrice

Mistura Gumbo do Chef Anton 21,35
Tempero Cajun do Chef Anton 22h00
Spread de Boysenberry da Vovó 25,00
Peras Secas Orgânicas do Tio Bob 30,00

Também podemos usar a cláusula WHERE com valores de string. Isso basicamente iguala caracteres a números, com A representando o valor 1 e Z representando o valor 26. Por exemplo, poderíamos mostrar todos os produtos com nomes começando com U, V, W, X, Y ou Z com a seguinte consulta:

SELECIONE o nome do produto
DE produtos
ONDE ProductName> = 'T'

O que produz o resultado:

Nome do Produto

Peras Secas Orgânicas do Tio Bob

Expressando intervalos usando limites

A cláusula WHERE também nos permite implementar uma condição de intervalo em um valor usando várias condições. Por exemplo, se quiséssemos pegar nossa consulta acima e limitar os resultados a produtos com preços entre 15,00 e 20,00, poderíamos usar a seguinte consulta:

SELECIONE Nome do Produto, PreçoUnitário
DE produtos
ONDE Preço Unitário> 15,00 E Preço Unitário <20,00

Isso produz o resultado mostrado abaixo:

ProductName UnitPrice

Chai 18,00
Chang 19,00

Expressando intervalos com BETWEEN

O SQL também fornece um atalho BETWEEN sintaxe que reduz o número de condições que precisamos incluir e torna a consulta mais legível. Por exemplo, em vez de usar as duas condições WHERE acima, poderíamos expressar a mesma consulta como:

SELECIONE Nome do Produto, PreçoUnitário
DE produtos
ONDE Preço unitário ENTRE 15,00 E 20,00

Tal como acontece com nossas outras cláusulas de condição, BETWEEN funciona com valores de string também. Se quiséssemos produzir uma lista de todos os países começando com V, W ou X, poderíamos usar a consulta:

SELECIONE o nome do produto
DE produtos
ONDE Nome do produto ENTRE "A" e "D"

O que produz o resultado:

Nome do Produto

Xarope de Anis
Chai
Chang
Mix de Gumbo do Chef Anton
Tempero Cajun do Chef Anton

A cláusula WHERE é uma parte poderosa da linguagem SQL que permite restringir os resultados a valores que se enquadram em intervalos especificados. É muito comumente usado para ajudar a expressar a lógica de negócios e deve fazer parte do kit de ferramentas de todo profissional de banco de dados. Muitas vezes é útil incorporar cláusulas comuns em um procedimento armazenado para torná-lo acessível àqueles sem conhecimento de SQL.

instagram story viewer