Академический Документы
Профессиональный Документы
Культура Документы
SQL Completo
Relacionamentos e Vises
Relacionamentos no SQL
Informaes relacionadas entre si Em geral entre diferentes tabelas Geralmente possuem campos em comum Parmetro JOIN e suas variaes SELECT ... FROM T1 JOIN T2 ON T1.FK = T2.PK SELECT ... FROM T1 JOIN T2 USING Chave Compatibilidade com bancos de dados
Inner join
Join padro Produto cartesiano entre as tabelas Combina todas as linhas da primeira tabela com todas as linhas da segunda, que satisfao as condies das chaves
13/9/2010
Inner join
SELECT * FROM PESSOAS JOIN VEICULOS ON PESSOAS.CPF = VEICULOS.CPF
Tabela PESSOAS NOME Fernando Guilherme CPF 111.111.111-11 222.222.222-22 ESTADO PR SP Tabela VEICULOS CPF 111.111.111-11 NULL VEICULO Carro Carro PLACA SB-0001 SB-0002
Tabela RESULTADO NOME Fernando CPF 111.111.111-11 ESTADO PR CPF 111.111.111-11 VEICULO Carro PLACA SB-0001
Equi join
Similar ao Inner join Chaves de mesmo nome entre as tabelas SELECT * FROM PESSOAS JOIN VEICULOS USING (CPF)
Tabela PESSOAS NOME Fernando Guilherme CPF 111.111.111-11 222.222.222-22 ESTADO PR SP Tabela VEICULOS CPF 111.111.111-11 NULL VEICULO Carro Carro PLACA SB-0001 SB-0002
Tabela RESULTADO NOME Fernando CPF 111.111.111-11 ESTADO PR VEICULO Carro PLACA SB-0001
Tabela RESULTADO NOME Fernando Guilherme SALARIO 1500 2500 FAIXA Analista Jnior Analista Pleno
13/9/2010
Tabela RESULTADO NOME Fernando Guilherme CPF 111.111.111-11 222.222.222-22 ESTADO PR SP CPF 111.111.111-11 NULL VEICULO Carro NULL PLACA SB-0001 NULL
Tabela RESULTADO NOME Fernando NULL CPF 111.111.111-11 NULL ESTADO PR NULL CPF 111.111.111-11 NULL VEICULO Carro Carro PLACA SB-0001 SB-0002
13/9/2010
Tabela RESULTADO NOME Fernando Guilherme NULL CPF 111.111.111-11 222.222.222-22 NULL ESTADO PR SP NULL CPF 111.111.111-11 NULL NULL VEICULO Carro NULL Carro PLACA SB-0001 NULL SB-0002
Self join
Unio da tabela com ela mesma SELECT A.NOME, B.NOME AS INDICADO_POR FROM PESSOAS A JOIN PESSOAS B ON A.INDICADO = B.CPF
Tabela PESSOAS NOME Fernando Guilherme CPF 111.111.111-11 222.222.222-22 ESTADO PR SP INDICADO NULL 111.111.111-11
Vises
Relao que no faz parte do modelo lgico Acessvel ao usurio como uma relao virtual Otimizao de espao em disco Centralizao de cdigo Facilidade de manuteno de expresses SQL
Tabela PESSOAS
Viso A
ESTADO PR SP SP
Viso B
13/9/2010
Assista agora as aulas prticas, que apresentam o uso dos comandos abordados nesta aula terica. Manuais dos principais bancos de dados esto disponveis na seo Links do curso de SQL.
Slide 13 AM6 Alguns bancos fornecem comandos de substituio (REPLACE) para facilitar a alterao da expresso SQL das vises, uma vez que suas excluses no afetam os dados.
Andr Milani; 14/4/2010