Académique Documents
Professionnel Documents
Culture Documents
2011/01
25/03/11
O nome das colunas pode ser omitido se todos os valores forem inseridos (na ordem correta)
25/03/11
25/03/11
INSERINDO REGISTROS
Inserindo registros sem especificar o nome dos campos (deve ser especificado Na ordem em que os campos foram definidos no CREATE TABLE):
25/03/11
CONSULTA SIMPLES
a operao mais realizada Sua complexidade e tempo de resposta so diretamente ligados a quantidade de tabelas usadas e tamanho das mesmas. Comando select:
SELECT COL1, COL2, ...., COLN FROM nome_tabela
25/03/11
CONSULTANDO
SELECT CODIGO, TITULO FROM LIVRO SELECT * FROM LIVRO Selecionando CODIGO E TITULO DE LIVRO Selecionando tudo DE LIVRO
25/03/11
CLUSULA WHERE
Usamos a clusula where quando desejamos filtrar linhas da tabela. Uma condio dever ser estabelecida, por exemplo: a) Livros com preos superiores a R$ 50,00 b) Livros cujos ttulos possuam a palavra 'DADO' c) Livros que foram lanados a mais de 5 anos
25/03/11
CONDIES
Expresso lgica Pode usar operadores relacionais (>,<,=,>=,<=,<>) Pode usar operadores lgicos (AND, OR, E NOT) Pode usar predicados prprios da linguagem SQL ( IS (NOT) NULL, IS (NOT) LIKE, IN e EXISTS Sero selecionadas as linhas que apresentarem valor VERDADEIRO para a expresso avaliada
25/03/11
j) Selecione o cdigo, o ttulo e o preo dos livros que contenham a expresso 'LINGUAGEM C'
SELECT CODIGO, TITULO, PRECO FROM LIVRO WHERE TITULO LIKE '%LINGUAGEM C%'
25/03/11
ATUALIZAO DE INFORMAO
UPDATE nome_tabela SET COL1=VAL1, COL2=VAL2,...,COLN=VALN WHERE expressao_lgica Exemplo: a) Acrescentar 10% ao valor dos livros
UPDATE LIVRO SET PRECO = PRECO*1.1
25/03/11
b) mudar o ttulo e valor do livro de cdigo 2 que passa a ser PROGRAMAO EM LINGUAGEM C de valor R$ 42,00
UPDATE LIVRO SET PRECO = 42, TITULO = 'PROGRAMAO EM LINGUAGEM C' WHERE CODIGO = 2
25/03/11
EXCLUSO DE LINHAS
Tambm usam a clusula where DELETE FROM nome_tabela WHERE expressao_logica Exemplo: a) Excluir todos os livros da tabela livro
25/03/11
CENTRO
25/03/11
25/03/11
25/03/11
25/03/11
AGRUPANDO DADOS
25/03/11
25/03/11
FUNES AGREGADAS
Operam sobre grupos de dados (obtm estatsticas sobre eles) Retornam uma tabela de uma linha e uma coluna. Ex.
Contagem Soma Mdia Valor Mximo Valor Mnimo Desvio Padro
25/03/11
CONTAGEM
Quantas linhas satisfazem uma determinada condio? A funo COUNT recebe um parmetro e retorna um nmero. Contagem do nmero de linhas: Linhas de LIVRO com lanamento Preenchido: Linhas de LIVRO com preo maior Que R$ 50,00:
SELECT COUNT(*) FROM LIVRO
SOMA
Somando os preos dos livros
SELECT SUM(PRECO) FROM LIVRO
MDIA
Obtendo a mdia dos preos (apenas para valores no nulos)
SELECT AVG(PRECO) FROM LIVRO
25/03/11
VALOR MXIMO
Maior preo da tabela de livros cujo assunto seja 'P'
SELECT MAX(PRECO) FROM LIVRO WHERE ASSUNTO = 'P'
VALOR MNIMO
Menor preo da tabela de livros cujo assunto seja 'B'
SELECT MIN(PRECO) FROM LIVRO WHERE ASSUNTO='B'
25/03/11
GROUP BY
As funes apresentadas anteriormente geravam um valor, mas se quisssemos saber a mdia dos preos dos livros de cada assunto como faramos?
SELECT AVG(PRECO) FROM LIVRO WHERE ASSUNTO='B' SELECT AVG(PRECO) FROM LIVRO WHERE ASSUNTO='P' SELECT AVG(PRECO) FROM LIVRO WHERE ASSUNTO='S'
25/03/11
CLUSULA GROUP BY
SELECT COL1, COL2,...,COLN, FUNCAO1,..,FUNCAON FROM nome_tabela WHERE CONDIO GROUP BY COL1,...,COLN
Qual o preo do livro mais caro de cada assunto dentre os que j foram lanados?
SELECT ASSUNTO,MAX (PRECO) FROM LIVRO WHERE LANCAMENTO IS NOT NULL GROUP BY ASSUNTO
25/03/11
Qual o preo do livro mais caro de cada assunto dentre os que j foram lanados?
SELECT ASSUNTO,MAX (PRECO) FROM LIVRO WHERE LANCAMENTO IS NOT NULL GROUP BY ASSUNTO
SELECT EDITORA, COUNT(*) FROM LIVRO WHERE LANCAMENTO IS NOT NULL GROUP BY EDITORA
25/03/11
25/03/11
25/03/11
CLUSULA HAVING
25/03/11
25/03/11