Disciplina: Banco de Dados - Edmilson Campos · AULA 10 Banco de Dados Baseado no livro SQL: ... 3...

19
Disciplina: http://edmilsoncampos.net [email protected] Edmilson Campos, Prof. MsC. AULA 10 Banco de Dados Baseado no livro SQL: Curso Prático, do Celso Henrique.

Transcript of Disciplina: Banco de Dados - Edmilson Campos · AULA 10 Banco de Dados Baseado no livro SQL: ... 3...

Disciplina:

http://edmilsoncampos.net

[email protected]

Edmilson Campos, Prof. MsC.

AULA 10

Banco de Dados

Baseado no livro SQL: Curso Prático, do Celso Henrique.

Introdução

Edmilson Campos ([email protected])2

»

»

»

»

Edmilson Campos ([email protected])3

SELECT [DISTINCT | ALL] { * | coluna [, coluna, ... ] }

FROM tabela

Indica que devem ser

mostradas todas as

colunas da tabela

Quando informado, o resultado

não mostra eventuais valores

repetidos nas colunas

Nome da tabela em que

será realizada a busca

Mostra todos os valores, mesmo

que repetidos. É o padrão se

DISTINCT não for informado

Lista de colunas que

devem ser mostradas

Edmilson Campos ([email protected])4

SELECT Codigo_CD, Nome_CD FROM CD

SELECT * FROM Gravadora

Edmilson Campos ([email protected])5

SELECT [DISTINCT | ALL] { * | coluna [, coluna, ... ] }

FROM tabela

ORDER BY coluna-ord [, coluna-ord, ...] [DESC | ASC]

Comando de

ordenação

Lista de colunas na

ordem de precedência

de classificação

Quando informado, os

resultados da busca

são ordenados em

ordem descendentes

Ordena os valores em

ordem ascendente. É

o padrão quando o

DESC não é informado

Edmilson Campos ([email protected])6

SELECT Codigo_CD, Nome_CD

FROM CD

ORDER BY Nome_CD

SELECT Codigo_CD, Nome_CD

FROM CD

ORDER BY Nome_CD DESC

Ordenando os valores

em ordem ascendente

Ordenando os valores

em ordem descendente

Edmilson Campos ([email protected])7

SELECT Codigo_CD, Nome_CD

FROM CD

ORDER BY Codigo_CD

SELECT Codigo_CD, Nome_CD

FROM CD

ORDER BY Codigo_Gravadora, Nome_CD

Ordenando resultados

pelo código do CD

Ordenando resultados

primeiramente pelo

código da gravadora e

em seguida pelo nome

do CD

Edmilson Campos ([email protected])8

»

»

»

SELECT [DISTINCT | ALL] { * | coluna [, coluna, ... ] }

FROM tabela

WHERE condição

Condição que define o

escopo (limite) da

apresentação dos resultados

Edmilson Campos ([email protected])9

Operador Significado Exemplo

= Igual Codigo_Autor = 2

< Menor que Preco_Venda < 10

<= Menor ou igual a Preco_Venda <= 10

> Maior que Preco_Venda > 10

>= Maior ou igual a Preco_Venda >= 10

!= ou <> Diferente Codigo_Autor != 2

SELECT Nome_CD, Preco_Venda

FROM CD

WHERE Preco_Venda > 10

Edmilson Campos ([email protected])10

»

»

SELECT Nome_CD, Preco_Venda, Codigo_Gravadora

FROM CD

WHERE Preco_Venda > 10 AND Codigo_Gravadora = 2

Edmilson Campos ([email protected])11

»

»

SELECT Nome_CD, Preco_Venda, Codigo_Gravadora

FROM CD

WHERE Preco_Venda > 11 OR Codigo_Gravadora = 3

Edmilson Campos ([email protected])12

»

»

SELECT Nome_CD, Preco_Venda

FROM CD

WHERE NOT ( Preco_Venda < 15)

SELECT Nome_CD, Preco_Venda, Codigo_Gravadora

FROM CD

WHERE NOT (Codigo_Gravadora = 2 OR Codigo_Gravadora = 3) AND Preco_Venda > 11

Edmilson Campos ([email protected])13

»

»

SELECT Nome_Gravadora, Endereco

FROM Gravadora

WHERE Endereco IS NULL

SELECT Nome_Gravadora, Endereco

FROM Gravadora

WHERE Endereco IS NOT NULL

Edmilson Campos ([email protected])14

»

»

SELECT Nome_CD, Data_Lancamento

FROM CD

WHERE Data_Lancamento BETWEEN '01/01/1999' AND '01/12/2001'

SELECT Nome_CD, Preco_Venda

FROM CD

WHERE Preco_Venda BETWEEN 9 AND 11

SELECT Nome_CD, Preco_Venda

FROM CD

WHERE Preco_Venda NOT BETWEEN 9 AND 11

Edmilson Campos ([email protected])15

»

Expressão Explicação

LIKE ‘A%’ Todas as palavras que iniciem com a letra A

LIKE ‘%A’ Todas que terminem com a letra A

LIKE ‘%A%’ Todas que tenham a letra A em qualquer posição

LIKE ‘_A’ String de dois caracteres cuja última letra seja A

LIKE ‘A_’ String de dois caracteres cuja primeira letra seja A

LIKE ‘_A_’ String de três caracteres cuja segunda letra (letra do meio) seja A

LIKE ‘%A_’ Todos que tenham a ketra A na penúltima posição

LIKE ‘_A%’ Todos que tenham a letra A na segunda posição

Edmilson Campos ([email protected])16

»

SELECT * FROM Autor

WHERE Nome_Autor LIKE 'A%'

SELECT * FROM Autor

WHERE Nome_Autor LIKE ‘_l%'

Todos os autores que

cujos nomes sejam

iniciados com a letra ‘A’

Todos os autores que

tenham a letra ‘L’ na

segunda posição da

palavra

SELECT * FROM Autor

WHERE Nome_Autor LIKE ‘C_r%'

Todos os autores com a

letra ‘C’ no início e a letra

‘R’ na terceira posição

Edmilson Campos ([email protected])17

»

»SELECT * FROM Autor

WHERE Codigo_Autor IN (1,10,20)

Edmilson Campos ([email protected])18

SELECT Codigo_CD, Nome_CD, Preco_Venda, Preco_Venda * 1.05

FROM CD

Edmilson Campos ([email protected])19