Banco de Dados
SQL 2
Profa. Ceça
Visão Gráfica do Exemplo
Ceça Moraes
2
MS Access:
BDExemploSQL2.mdb
Ceça Moraes
3
Extraindo dados de tabelas SELECT
SELECT <colunas> FROM <tabelas> [WHERE
<condição> ]
 SELECT <colunas>

Colunas da consulta separadas por vírgula

FROM <tabelas>
– Tabelas da consulta separadas por vírgula

WHERE <condição>]
– Condição lógica para seleção de linhas
Ceça Moraes
4
SELECT
Exemplo 1
Listar todos os produtos com respectivas
descrições, unidades, valores unitários
SELECT descricaoProduto, unidade,
valorUnit FROM produto;
 A execução desse comando irá listar todas
as linhas da tabela produtos

Ceça Moraes
5
SELECT
Exemplo 2

Listar o CGC, o nome
e o endereço de
todos os clientes
SELECT CGC,
nomeCliente,
endereco
FROM Cliente;
Ceça Moraes
6
SELECT
Exemplo 3
Selecionando todas as colunas de uma
tabela
SELECT * FROM <tabela>
 Listar todo o conteúdo de vendedor
SELECT * FROM vendedor
 Resultado: todos os vendedores

Ceça Moraes
7
Alterando o cabeçalho (header) da
coluna
Por default, o cabeçalho apresentado no
resultado do SELECT é o nome da coluna
da tabela
 É possível modificá-lo:
SELECT nome_coluna AS cabecalho, ...
FROM nome_da_tabela

Ceça Moraes
8
Exemplo : Mudando o cabeçalho
SELECT codigoVendedor AS [Número do
Vendedor], nomeVendedor AS [Nome do
Vendedor], salarioFixo AS rendimentos,
faixaComissao AS comissao FROM Vendedor
Ceça Moraes
9
Manipulando dados numéricos

Operadores aritméticos podem ser usados
sobre qualquer coluna numérica
– +, -, /, *, %

Exemplo:
SELECT nomeVendedor, (salarioFixo * 2)
AS [Salário Dobrado] FROM Vendedor
Ceça Moraes
10
Manipulando dados numéricos Exemplo

O resultado
apresenta os
salários
multiplicados por
2.
Ceça Moraes
11
Selecionando algumas linhas da
tabela

Usando operadores de comparação
– =, <>, <, >, <=, >=
– Cláusula WHERE
SELECT <nome das colunas> FROM <tabelas>
WHERE <nome das coluna> <operador>
<valor>
– Se o valor for do tipo caractere deve estar entre
aspas (“).
Ceça Moraes
12
Selecionando linhas

Listar o numPedido, o codigoProduto, e a
quantidade dos produtos na tabela ItemPedido,
que tiveram 35 unidades vendidas.
SELECT numPedido, codigoProduto,
quan FROM ItemPedido
WHERE quan = 35
numPedido
codigoProduto
Quan
121
31
35
138
77
35
Ceça Moraes
13
Selecionando linhas

Listar os nomes dos clientes da cidade de São
Paulo
SELECT nomeCliente FROM Cliente
WHERE cidade = “São Paulo”
Ceça Moraes
14
Selecionando linhas

Usando operadores lógicos
– AND, OR, NOT

Listar os produtos que tenham unidade igual a
“M” e valor unitario igual a R$ 1,05
SELECT descricaoProduto FROM Produto
WHERE unidade = “M” AND valUnit = 1.05;
DESCRICAOPRODUTO
Papel
Ceça Moraes
15
Selecionando linhas
AND, OR, NOT
Liste o código, nome, endereço e cidade de
clientes que moram na cidade de São Paulo
OU cujo código esteja na faixa entre 200 E
300
SELECT codigoCliente, nomeCliente, endereco,
cidade
FROM Cliente
WHERE cidade="São Paulo“ OR (codigoCliente
>= 200 and codigoCliente <= 300);

Ceça Moraes
16
Selecionando linhas
AND, OR, NOT
Ceça Moraes
17
Selecionando linhas
AND, OR, NOT
Mostrar todos os pedidos que não tenham prazo
de entrega igual a 15 dias
SELECT numPedido , prazoEntrega
FROM Pedido
WHERE NOT (prazoEntrega = 15);
OU
SELECT numPedido, prazoEntrega
FROM Pedido
WHERE prazoEntrega <> 15

Ceça Moraes
18
Selecionando linhas
Between e Not Between
Uso em substituição aos operadores <= e
>=
 Intervalos
WHERE <nome das coluna> BETWEEN
<valor1> AND <valor2>

WHERE <nome das coluna> NOT
BETWEEN <valor1> AND <valor2>
Ceça Moraes
19
Selecionando linhas
Between e Not Between

Listar o código e a descrição dos produtos que
tenham o valor unitário na faixa de R$ 0,32 até
R$ 2,00
SELECT codigoProduto, descricaoProduto, valUnit
FROM Produto
WHERE valUnit BETWEEN 0.32 AND 2.00;
Ceça Moraes
20
SELECT codigoProduto, descricaoProduto, valUnit
FROM Produto
WHERE valUnit BETWEEN 0.32 AND 2.00;
Ceça Moraes
21
Selecionando linhas
LIKE e Not LIKE
Operadores baseados em string de caracteres
LIKE e NOT LIKE
 Só usamos para colunas do tipo CHAR
 Usam os símbolos %,* e _ que fazem
substituições

– (% ou *) - substitui uma palavra
– (_ ou ?) - substitui um caractere
– MS Access usa * e ?
WHERE <nome das coluna> LIKE <valor>
WHERE <nome das coluna> NOT LIKE <valor>
Ceça Moraes
22
Exemplo usando LIKE

LIKE “LAPIS%” ou LIKE “LAPIS*” pode enxergar
os seguintes registros:
– ‘LAPIS PRETO’
– ‘LAPIS CERA’
– ‘LAPIS BORRACHA’

LIKE “BROCA N_” pode enxergar os seguintes
registros:
– ‘BROCA N1’
– ‘BROCA N2’
– ‘BROCA N9’
Ceça Moraes
23
Exemplo usando LIKE

Listar todos os produtos que tenham o
seu nome começando por C.
SELECT codigoProduto,descricaoProduto
FROM Produto
WHERE descricaoProduto Like "C*"
Ceça Moraes
24
Exemplo usando LIKE

Listar todos os produtos que tenham o
seu nome começando por C.
SELECT codigoProduto,descricaoProduto
FROM Produto
WHERE descricaoProduto Like "C*"
Ceça Moraes
25
Exemplo usando LIKE

Listar nome e cidade dos clientes cuja
UF termina com “P”
SELECT nomeCliente, UF
FROM Cliente
WHERE UF Like '*P'
Ceça Moraes
26
Exercícios
1.
2.
3.
4.
5.
Listar os vendedores cujo nome não
começa por “Jo”
Listar o nome e o endereço de todos os
clientes da cidade de Recife ou do estado
da Bahia
Mostrar todos os pedidos que tenham
prazo de entrega igual a 20 dias
Listar todos os produtos que tenham o
seu nome começando por M ou V
Listar os produtos cujos preços variem
entre R$ 0,10 e R$ 0,30
27
Exercícios
6.
7.
Listar o código e nome do vendedor que
têm nome iniciano com a letra “P”, faixa
de comissao = “C” e cujo salário esteja
entre 1000 e 2000.
Listar os produtos que nâo têm descrição.
28
Download

Slide 1