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

Preview:

Citation preview

Disciplina:

http://edmilsoncampos.net

edmilson.campos@ifrn.edu.br

Edmilson Campos, Prof. MsC.

AULA 10

Banco de Dados

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

Introdução

Edmilson Campos (edmilson.campos@ifrn.edu.br)2

»

»

»

»

Edmilson Campos (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)4

SELECT Codigo_CD, Nome_CD FROM CD

SELECT * FROM Gravadora

Edmilson Campos (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)10

»

»

SELECT Nome_CD, Preco_Venda, Codigo_Gravadora

FROM CD

WHERE Preco_Venda > 10 AND Codigo_Gravadora = 2

Edmilson Campos (edmilson.campos@ifrn.edu.br)11

»

»

SELECT Nome_CD, Preco_Venda, Codigo_Gravadora

FROM CD

WHERE Preco_Venda > 11 OR Codigo_Gravadora = 3

Edmilson Campos (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)13

»

»

SELECT Nome_Gravadora, Endereco

FROM Gravadora

WHERE Endereco IS NULL

SELECT Nome_Gravadora, Endereco

FROM Gravadora

WHERE Endereco IS NOT NULL

Edmilson Campos (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)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 (edmilson.campos@ifrn.edu.br)17

»

»SELECT * FROM Autor

WHERE Codigo_Autor IN (1,10,20)

Edmilson Campos (edmilson.campos@ifrn.edu.br)18

SELECT Codigo_CD, Nome_CD, Preco_Venda, Preco_Venda * 1.05

FROM CD

Edmilson Campos (edmilson.campos@ifrn.edu.br)19

Recommended