Aula 15
Slide 6: Produto Cartesiano
O produto cartesiano gera o código errado, valores errados, exemplo:
SELECT Funcionarios.funCodigo,
Funcionarios.funNome,
Funcionarios,funDataAdm,
Funcionarios, funSalario,
Funcionarios, funCodFunção,
Função.fucDescricao
FROM Funcionarios,
Funcionarios;
Slide 7 (tabela)
Slide 8 – Produto cartesiano é chamado de CAGADA.
Chave estrangeira é uma coluna que esta na tabela, que vem de outra tabela.
Join Simples Sintaxe:
SELECT <tabela1>,<coluna>,<tabela2>,<coluna>
FROM <tabela1>,<tabela2>
WHERE <tabela1>,<coluna> = <tabela2>,<coluna> 1 N 1
120 Linhas criadas erradas.
Slide 12
Obs.: JOIN é criar relacionamento, foi feito na clasula WHERE. Perceba que antes de dizer o nome do campo (coluna) há o nome da tabela separado por um ponto (.)
Slide 13
Usando alias para as tabelas
SELECT F.funCodigo,
F.funNome,
F.funDataAdm,
F.funSalario,
F.funCodCategoria,
C.catDescricao
FROM Categoria C, //*atribuiu um apelido
Funcionarios F
WHERE F.funCatCodigo=C.catCodigo; //* vinculo //* FK - PK
Alias – Equivale ao apelido para a tabela.
Slide 14
Inner Join
SELECT Funcionarios.*, Categoria,CatDescrica
FROM Categori INNER JOIN Funcionarios ON //* O comando inner join na microsoft é substituido por (,) //* e o ON é substituido por WHERE
Categoria.CatCodigo =
Funcionarios.funCodCategoria;
Slide 18
Left Join
SELECT Funcionarios.*, Categoria.catDescricao
FROM Categoria LEFT JOIN Funcionarios ON
Categoria.catCodigo=Funcionarios.funCodCategori
a;
Slide 22
Join Com 3 tabelas
SELECT Funcionarios.funCodigo,
Funcionarios.funNome, Funcionários.funSalario,
Funcionarios.funCodFuncao, Funcao.fucDescricao,
Categoria.catDescricao
FROM Funcao INNER JOIN
(Categoria INNER JOIN Funcionarios ON
Categoria.catCodigo =
Funcionarios.funCodCategoria)
ON
Funcao.fucCodigo = Funcionarios.funCodFuncao; //* PK – FK
DDL >> Create > Alter > Drop
DML >> Insert > Update > Delect > Select