SQL em Oracle > DML > Junção de tabelas
Junção de Tabelas tl_logo2.jpg

A figura abaixo resume as operações de junção:

JuncaoQuadroResumo.jpg

As operações de junção dividem-se em dois grupos: horizontais e verticais. As horizontais actuam sobre linhas enquanto as verticais actuam sobre colunas.

Junção horizontal

Utiliza-se uma junção horizontal quando a consulta SQL requer dados de duas ou mais tabelas. Esta é a operação que na prática tira partido do conceito "base de dados relacional" pois permite mostrar os dados que estão armazenados em diferentes tabelas como se estivessem armazenados numa única, desde que essas tabelas possuam um relacionamento entre si. A tabela resultado é construída a partir de uma das tabelas originais, acrescentando colunas da segunda tabela, o que corresponde a um crescimento horizontal.

A norma SQL99 define a sintaxe usada pelas cláusulas do comando SELECT para fazer os diferentes tipos de junção. A base de dados Oracle suporta esta sintaxe desde a versão 9.0. Nas versões anteriores à 9.0 era usada uma sintaxe antiga, que no caso da junção externa possuia uma notação proprietária. Por razões de compatibilidade com o passado a sintaxe antiga com as extensões proprietárias contínua disponível. Neste manual os comandos serão dados seguindo as duas abordagens: sintaxe antiga e SQL99.

Produto cartesiano

Equi-junção

Junção externa

Junção de uma tabela com ela própria

Não-equi-junção

Junção vertical

A junção vertical utiliza-se quando queremos obter um único conjunto a partir de dois conjuntos diferentes.

Operadores sobre conjuntos

Exercícios sobre junção de tabelas

Soluções dos exercícios sobre junção de tabelas

bthome.gifTopo


Realizado por Turtle Learning ®. Última alteração em 2011-02-26