Вы находитесь на странице: 1из 27

Laboratório de

Banco de Dados
Aula 03 – Consultas com Operadores
Prof. Ícaro Lins Iglesias
IF Farroupilha – Câmpus São Borja
SQL e Operadores
• A linguagem SQL permite a execução de consultas
envolvendo operadores
• Estas consultas podem ser executadas através dos
comandos SELECT e UPDATE

• Os operadores podem ser categorizados em:


1. Operadores Aritméticos
2. Operadores Relacionais
3. Operadores Lógicos
4. Operadores Auxiliares
1) Operadores Aritméticos
• Responsáveis pelas operações e cálculos
matemáticos simples.
• Operações possíveis de consultas:

Operador Operação matemática


+ Adição
- Subtração
* Multiplicação
/ Divisão
% Resto da divisão
Operadores Aritméticos
Cálculos sem tabela
SELECT 1+2;
SELECT 1+2 AS SOMA;
SELECT 1+2*3;
Cálculos com tabela
SELECT nome, salario + 10 AS REAJUSTE
FROM vendedor;
Operadores Aritméticos
SELECT nome, salario * 1.10 AS ‘AUMENTO 10%’
FROM vendedor;

SELECT nome, salario * 0.7 AS ‘DESCONTO 30%’


FROM vendedor;
2) Operadores Relacionais
• Operadores de comparação utilizados na
definição de condições em que há necessidade
de comparação entre dois valores.

Operador Operação relacional


> Maior que
< Menor que
= Igual a
<> ou != Diferente de
>= Maior ou igual a
<= Menor ou igual a
Operadores Relacionais
Exemplo: Exibe apenas os vendedores que possuem
salário maior que R$ 3000
SELECT nome, salario
FROM vendedor
WHERE salario > 3000;
Operadores Relacionais
Exemplo: Exibe todos os produtos que possuem estoque
menor ou igual a 100 unidades, ordenados por descrição
SELECT *
FROM produto
WHERE estoque <= 100
ORDER BY descricao;
Operadores Relacionais
Exemplo: Exibe todos vendedores que possuem a faixa de
comissão diferente de „B‟, ordenados por faixa de comissão
SELECT *
FROM vendedor
WHERE fx_comissao <> ‘B’
ORDER BY fx_comissao;
3) Operadores Lógicos
• Operadores booleanos, utilizados quando há
necessidade de relacionar duas ou mais condições
ao mesmo tempo.

Operador Operação lógica


AND E – operador de conjunção
OR OU – operador de disjunção
NOT NÃO – operador de negação
Operadores Lógicos - AND
Exemplo: Exibe todos vendedores que possuem a faixa de
comissão igual a „A‟ E salário maior ou igual a R$ 3000,
ordenados por faixa de comissão
SELECT *
FROM vendedor
WHERE fx_comissao = ‘A’ AND salario >= 3000
ORDER BY fx_comissao;
Operadores Lógicos - OR
Exemplo: Exibe todos pedidos realizados aos códigos de
clientes igual a 105 OU igual a 110.

SELECT *
FROM pedido
WHERE idcliente = 105 OR idcliente = 110;
Operadores Lógicos - NOT
Exemplo: Exibe todos vendedores que NÃO pertencem a
faixa de comissão igual a „A‟.
SELECT *
FROM vendedor
WHERE NOT fx_comissao = ‘A’;
Operadores Lógicos
Exemplo: Exibe todos os vendedores que pertençam a faixa de
comissão „C‟ E NÃO ganham R$ 3000 OU que NÃO pertençam a faixa
„C‟ e ganhem este valor.
SELECT * FROM vendedor
WHERE(fx_comissao = 'C' AND (NOT salario = 3000))
OR ((NOT fx_comissao='C') AND salario = 3000);
4) Operadores Auxiliares
• Operadores utilizados para auxiliar a definição de
condições.

Operador Operação auxiliar


IS NULL Verifica se o campo é vazio (nulo)
BETWEEN Verifica um valor entre uma faixa de
valores
IN Verifica se um valor existe na tabela
LIKE Verifica um valor por semelhança
Operadores Auxiliares – IS NULL
Exemplo: Exibe todos os clientes cujo UF é vazio.

UPDATE cliente SET UF=NULL


WHERE idcliente IN (101, 103,105,107);

SELECT *
FROM cliente
WHERE UF
IS NULL;
Operadores Auxiliares - BETWEEN
Exemplo: Exibe todos os pedidos realizados entre 01 a 31 de
dezembro de 2014.
SELECT *
FROM pedido
WHERE data_pedido
BETWEEN '2014-12-01' AND '2014-12-31';
Operadores Auxiliares – NOT BETWEEN
Exemplo: Exibe todos os pedidos realizados fora do período
de 01 a 31 de dezembro de 2014.
SELECT *
FROM pedido
WHERE data_pedido
NOT BETWEEN '2014-12-01' AND '2014-12-31';
Operadores Auxiliares - IN
Exemplo: Exibe todos os vendedores cuja faixa de comissão
seja „A‟ ou „B‟
SELECT *
FROM vendedor
WHERE fx_comissao IN (‘A’, ‘B’);
Operadores Auxiliares – NOT IN
Exemplo: Exibe todos os vendedores cuja faixa de comissão
NÃO seja „A‟ ou „B‟
SELECT *
FROM vendedor
WHERE fx_comissao NOT IN (‘A’, ‘B’);
Operadores Auxiliares
LIKE
• O operador LIKE aceita o uso de operadores curinga,
aumentando o seu potencial de operação.
• Ambos podem ser usados em qualquer local da string
pesquisada. São eles:

%(porcentagem): representa zero, um ou vários


caracteres.

_(underline): representa sempre um único


caractere.
Operadores Auxiliares
Exemplo: Exibe todos os produtos que começem com „MB‟

SELECT *
FROM produto
WHERE descricao LIKE ‘MB%’;
Operadores Auxiliares
Exemplo: Exibe todos os vendedores que terminem com
„ER‟ em seu nome
SELECT *
FROM vendedor
WHERE nome LIKE ‘%ER’;
Operadores Auxiliares
Exemplo: Exibe todos os produtos que contenham a string
„camera‟ em sua descricão
SELECT *
FROM produto
WHERE descricao LIKE ‘%CAMERA%’;
Operadores Auxiliares
Exemplo: Exibe todos os produtos que começem com a string
„MEM‟, possuam um caractere qualquer seguido do caractere
„D‟ na quarta posição e contendo qualquer string ao final
SELECT *
FROM produto
WHERE descricao LIKE ‘MEM_D%’;
Operadores Auxiliares
Exemplo: Exiba todos os JOYSTICKs para PS3 e PS4

SELECT *
FROM produto
WHERE descricao LIKE '__ys%ps3%'
OR descricao LIKE '__ys%ps4%';
Exercícios
Salve seus comandos para estudos posteriores em um arquivo de texto!
1. Apresente o valor atual e um aumento de 20% para o salário dos
funcionários da classe C
2. Apresente o valor atual e uma coluna com a redução de 30% no valor
unitário dos produtos com estoque superior a 80 unidades
3. Apresente o código, descrição, valor e estoque dos produtos com
valores acima de R$1000 e estoque entre 10 e 200 unidades
4. Apresente a descrição, estoque e valor dos produtos que não estão na
faixa entre R$ 200 a R$500
5. Exiba os vendedores das faixas „B‟ ou „C „que recebem salários a partir
de R$4000
6. Mostre os pedidos realizados em 2012 com prazo de entrega entre 7 a
13 dias
7. Mostre os pedidos realizados pelos clientes 125 e 132 no ano de 2015
8. Apresente os itens dos pedidos 15 e 20 vendidos com quantidade entre
20 a 30 unidades
9. Apresente os produtos que possuem a string “Mini” em sua descrição
10. Exiba quais sãos os “Toner HP” da cor PRETO com estoque acima de
150 unidades do sistema
11. Apresente quais são as mochilhas da marca “SATELLITE” de 15” com
valor abaixo de R$50,00

Вам также может понравиться