Skip to content

Commit

Permalink
adicionando exemplos de right outer join e left outer join
Browse files Browse the repository at this point in the history
  • Loading branch information
LASalvador committed Dec 7, 2019
1 parent 44d0ad7 commit c09bbbe
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions 4_semestre/banco_de_dados/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -1007,10 +1007,34 @@ Diferente das junções internas, as externas não exigem que haja uma ligação

Neste caso a primeira tabela especificada no momento do `select` terá todos os seus elementos persistidos, mesmo aqueles que não tem qualquer ligação com os elementos da segunda tabela especificada, gerando assim um resultado, com todos os elementos da tabela A (Primeira a ser declarada), mais os elementos da tabela B (Segunda a ser declarada) que tem alguma correspondência em A.

```sql
SELECT
a.nome,
b.nome
FROM
tabelaA a
LEFT OUTER JOIN
tabelaB b
ON
a.id = b.id;
```

##### Right Outer Join

Esta é a operação inversa da citada anteriormente, aqui a tabela levada em consideração é a segunda a ser declarada no `select`, desta forma, na tabela gerada como resultado, todos os elementos de B (Segunda tabela a ser declarada) serão mantidos mesmo que não tenham correspondência com A, e também os elementos de A, estes que são somente aqueles que tem alguma ligação com B.

```sql
SELECT
a.nome,
b.nome
FROM
tabelaA a
RIGHT OUTER JOIN
tabelaB b
ON
a.id = b.id;
```

##### Full Outer Join

No caso deste junção, todos os elementos de todas as tabelas serão mantidos, tendo ligação ou não, e aqui, os elementos que não tem ligação entre as tabelas que estão sendo 'juntadas', recebem campos com valores null, nos locais onde haveria uma chave de ligação, por exemplo.
Expand Down

0 comments on commit c09bbbe

Please sign in to comment.