Uma breve explicação sobre WHERE no SQL
Neste artigo, veremos o uso da cláusula WHERE no SQL em conjunto com os operadores AND, OR, IN, NOT IN, BETWEEN e NOT BETWEEN.
Deixaremos a explicação e os exemplos do uso dos operadores LIKE e NOT LIKE para a próxima parte de nosso curso.
Where e seus Operadores no SQL
Como feito em partes anteriores, faremos nessa alguns exemplos para melhor entendimento do uso do Where com esses operadores. Como foi explicado os conceitos e mostrados exemplos do Where na parte anterior, nessa iremos direto ao uso dele com os operadores. Acompanhem os conceitos e exemplos:
Se você precisa saber mais sobre SQL veja nosso curso de SQL
WHERE com AND e OR
WHERE com AND e OR – Usamos os operadores AND e OR junto com Where quando é necessário usar mais de uma condição de comparação. Como exemplo, iremos usar a tabela de Produtos ao longo de todo este artigo, criada na parte anterior. Vamos ao exemplo: iremos utilizar o operador AND para determinar um acréscimo de 10% nos produtos de Informática cujo valor seja igual ou inferior a 350.00. Para isso, faça a seguinte instrução (antes dê um Select * From Produtos e note o valor dos produtos Processador e Monitor):
Nossa tabela ficará assim:
Percebeu a diferença? As colunas Processador e Monitor sofreram um acréscimo de 10% em seu valor.
O operador OR é usado especificamente quando desejamos atender a duas condições distintas. Considerando a tabela Produto, o OR deve ser utilizado quando desejamos, por exemplo, atribuir um acréscimo de 10% sobre o valor dos produtos do tipo Eletrônicos ou sobre o valor daqueles cujo preço é maior ou igual a 350.00. Neste caso, uma das condições deve ser atendida. Para isso, precisamos executar a seguinte instrução (sempre lembrando que, como UPDATE não tem volta, fez tá feito, use o Select * From Produtos para notar a diferença antes e depois do UPDATE):
Que nos resultará nesta tabela:
Neste exemplo observamos que o uso do operador OR é muito mais abrangente do que o operador AND, já que podemos perceber que uma quantidade maior de linhas foi atingida após o uso do UPDATE.
Dito isto, podemos concluir que o operador AND permite realizar a avaliação de duas expressões conjuntamente, sendo que o resultado obtido apenas será verdadeiro se ambas as expressões forem verdadeiras. Ao contrário, o operador OR permite que realizemos a avaliação de duas expressões de forma separada. Assim, o resultado será verdadeiro se somente uma expressão for verdadeira ou se ambas forem verdadeiras.
WHERE com IN
WHERE com IN – Podemos usar o operador IN no lugar do operador OR em determinadas situações. O IN permite verificar se o valor de uma coluna está presente em uma lista de elementos. Considerando a tabela Produtos, podemos utilizar o IN ou o OR para selecionar os produtos do tipo Eletrônicos ou do tipo Informática. Confira a seguir como fazer esta consulta com ambos os operadores:
- Operador OR
- Operador IN
Ambas as consultas nos trarão o mesmo resultado:
WHERE com NOT IN
WHERE com NOT IN – Este operador, ao contrário do IN, permite obter como resultado o valor de uma coluna que não pertence a uma determinada lista de elementos, como podemos perceber pela seguinte instrução:
O resultado será o seguinte:
Podemos perceber acima que foram exibidos apenas os produtos que não são do tipo Eletrônicos ou Informática. Podemos usar também o operador AND em conjunto com o sinal de comparação diferente (<>) para obter o mesmo resultado, como a instrução a seguir nos mostra:
WHERE com BETWEEN
WHERE com BETWEEN – O operador BETWEEN tem a finalidade de permitir a consulta entre uma determinada faixa de valores. Dessa forma, podemos usar este operador para selecionar todos os produtos cujos valores estejam entre 300.00 e 500.00 na tabela Produtos. Para isso devemos fazer essa instrução:
Que terá como resultado essa consulta:
Outra forma de obter o mesmo resultado é por meio do seguinte comando:
Por meio do operador AND e dos operadores relacionais =, < e > também é possível consultar uma determinada faixa de valores. No entanto, por meio do BETWEEN esta consulta torna-se ainda mais simples. Este operador permite checar se o valor de uma coluna encontra-se em um determinado intervalo. Ele pode ser utilizado para verificar intervalos de data, caracteres, entre outros.
WHERE com NOT BETWEEN
WHERE com NOT BETWEEN – O operador NOT BETWEEN, ao contrário do anteriormente descrito, permite consultar os valores que não se encontram em uma determinada faixa. Considerando nossa tabela, podemos consultar os produtos cujos valores não estão entre 300.00 e 500.00. Para isso, é preciso executar o comando descrito a seguir:
Com a execução desta instrução, o resultado obtido é o seguinte:
Outra forma de se obter o mesmo resultado é o seguinte:
Com a execução deste comando, o resultado obtido com a tabela Produtos é o mesmo apresentado com a execução do operador NOT BETWEEN.
Na próxima parte, veremos o uso do Where em conjunto com os operadores LIKE e NOT LIKE. Veremos também os conceitos e exemplos das cláusulas ORDER BY, TOP e TOP WITH TIES.
Links Úteis
- Downloads do SQL Server:
- SQL:
SQL, é a linguagem de pesquisa declarativa padrão para banco de dados relacional (base de dados relacional). Muitas das características originais do SQL foram inspiradas na álgebra relacional. - MySQL:
Saiba mais sobre Java ;)
- Curso de Administração de Banco de Dados com SQL Server:
Neste curso estudaremos os principais tópicos necessários para profissionais que utilizam o SQL Server como servidor de banco de dados no dia a dia. - SQL Server 2016:
Este artigo aborda as novidades disponibilizadas na versão 2016 do SQL Server com o intuito de expor suas melhorias e seus novos recursos. - Trabalhando com a linguagem T-SQL:
Este artigo apresenta o uso da linguagem T-SQL. Serão discutidos alguns recursos que podem ser usados no desenvolvimento e manipulação na consulta a dados usando a ferramenta SQL Server.
Confira outros conteúdos:
SQL SUM: somando os valores de uma...
SQL: INNER JOIN
SQL: Introdução ao Where
Black November
Desconto exclusivo para as primeiras 200 matrículas!
Pagamento anual
12x no cartão
De: R$ 69,00
Por: R$ 54,90
Total: R$ 658,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- 12 meses de acesso
Pagamento recorrente
Cobrado mensalmente no cartão
De: R$ 79,00
Por: R$ 54,90 /mês
Total: R$ 658,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- Fidelidade de 12 meses
- Não compromete o limite do seu cartão
<Perguntas frequentes>
Nossos casos de sucesso
Eu sabia pouquíssimas coisas de programação antes de começar a estudar com vocês, fui me especializando em várias áreas e ferramentas que tinham na plataforma, e com essa bagagem consegui um estágio logo no início do meu primeiro período na faculdade.
Estudo aqui na Dev desde o meio do ano passado!
Nesse período a Dev me ajudou a crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha
empresa. Hoje eu lidero um time de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um
Full-Stack Dev!
Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a pena, pois a plataforma é bem intuitiva e muuuuito didática a metodologia de ensino. Sinto que estou EVOLUINDO a cada dia. Muito obrigado!
Nossa! Plataforma maravilhosa. To amando o curso de desenvolvimento front-end, tinha coisas que eu ainda não tinha visto. A didática é do jeito que qualquer pessoa consegue aprender. Sério, to apaixonado, adorando demais.
Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um passo a passo incrível. Só não aprende quem não quer. Foi o melhor investimento da minha vida!
Foi um dos melhores investimentos que já fiz na vida e tenho aprendido bastante com a plataforma. Vocês estão fazendo parte da minha jornada nesse mundo da programação, irei assinar meu contrato como programador graças a plataforma.
Wanderson Oliveira
Comprei a assinatura tem uma semana, aprendi mais do que 4 meses estudando outros cursos. Exercícios práticos que não tem como não aprender, estão de parabéns!
Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão presente na vida acadêmica de seus alunos, parabéns!
Eduardo Dorneles
Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje estou há 1 ano empregado trabalhando 100% com React!
Adauto Junior
Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou aprendendo muito, muito obrigado por existirem. Estão de parabéns... Espero um dia conseguir um emprego na área.
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.