Você está na página 1de 7

Banco de Dados

DML Junes (JOINs)


Prof. Andr Luiz Moura <andreluiz@inf.ufg.br>

DM Tipos de Junes (JOINs)

Internas: Todas as linhas envolvidas tm de satisfazer condio da juno.

Produto Cartesiano

Padro non-ANSI ou Theta (Juno com WHERE) Padro ANSI (Juno com JOIN). Exemplo: CROSS JOIN O padro INNER JOIN. Pode ser escrito com apenas JOIN.

INNER JOIN

Externas: Todas as linhas envolvidas no necessariamente satisfazem condio da juno.

OUTER JOIN:

LEFT OUTER JOIN. Inclui todas as linhas da tabela que est esquerda na expresso. Pode ser escrito com apenas LEFT JOIN. RIGHT OUTER JOIN. Inclui todas as linhas da tabela que est direita na expresso. Pode ser escrito como apenas RIGHT JOIN. FULL OUTER JOIN. Inclui todas as linhas que no se casam tanto da tabela direita quanto da tabela esquerda.

DM Sintaxe e exemplo de Junes

Produto Cartesiano:

DM Sintaxe e exemplo de Junes

INNER JOIN:

Sintaxe:
SELECT [*] (Coluna1, ..., ColunaN) FROM Tabela1 [INNER] JOIN Tabela2 ON condies;

Exemplo:
SELECT EMP.Nome, EMP.Salario, EMP.Depto, DEP.Nome FROM DEP INNER JOIN EMP ON DEP.Cod = EMP.Depto;

DM Sintaxe e exemplo de Junes

LEFT OUTER JOIN:

Sintaxe:
SELECT [*] (Coluna1, ..., ColunaN) FROM Tabela1 LEFT [OUTER] JOIN Tabela2 ON condies;

Exemplos:
SELECT EMP.Nome, EMP.Salario, EMP.Depto, DEP.Nome FROM DEP LEFT JOIN EMP ON DEP.Cod = EMP.Depto;

DM Sintaxe e exemplo de Junes

RIGHT OUTER JOIN:

Sintaxe:
SELECT [*] (Coluna1, ..., ColunaN) FROM Tabela1 RIGHT [OUTER] JOIN Tabela2 ON condies;

Exemplo:
SELECT EMP.Nome, EMP.Salario, EMP.Depto, DEP.Nome FROM DEP RIGHT JOIN EMP ON EMP.Depto = DEP.Cod;

DM Sintaxe e exemplo de Junes

FULL OUTER JOIN (Inexiste no MySQL):

Sintaxe:
SELECT [*] (Coluna1, ..., ColunaN) FROM Tabela1 FULL [OUTER] JOIN Tabela2 ON condies;

Exemplo MySQL (usando UNION):


SELECT EMP.Nome, EMP.Salario, EMP.Depto, DEP.Nome FROM DEP LEFT JOIN EMP ON DEP.Cod = EMP.Depto UNION SELECT EMP.Nome, EMP.Salario, EMP.Depto, DEP.Nome FROM DEP RIGHT JOIN EMP ON EMP.Depto = DEP.Cod;

Você também pode gostar

  • DevC++ Conio2
    DevC++ Conio2
    Documento21 páginas
    DevC++ Conio2
    André Luiz Moura
    Ainda não há avaliações
  • Aula20 MergeSort
    Aula20 MergeSort
    Documento14 páginas
    Aula20 MergeSort
    André Luiz Moura
    Ainda não há avaliações
  • Arvores B
    Arvores B
    Documento125 páginas
    Arvores B
    Daniel Batista
    Ainda não há avaliações
  • BD06
    BD06
    Documento7 páginas
    BD06
    André Luiz Moura
    Ainda não há avaliações
  • Tese Andre
    Tese Andre
    Documento115 páginas
    Tese Andre
    André Luiz Moura
    Ainda não há avaliações
  • Projeto de Software Usando UML
    Projeto de Software Usando UML
    Documento69 páginas
    Projeto de Software Usando UML
    Carlos Selva Jr
    Ainda não há avaliações
  • Aula Normalizacao
    Aula Normalizacao
    Documento34 páginas
    Aula Normalizacao
    André Luiz Moura
    Ainda não há avaliações
  • ComoFazerAçúcarMascavo PGA 07 08
    ComoFazerAçúcarMascavo PGA 07 08
    Documento8 páginas
    ComoFazerAçúcarMascavo PGA 07 08
    André Luiz Moura
    Ainda não há avaliações