[firebase-br] Join

HPensador hpensador em gmail.com
Ter Out 16 14:27:41 -03 2007


Boa tarde Domenico Schettini Filho!


> O que os diferentes comandos Join(INNER, LEFT,RIGHT) fazem em uma tabela?

Left Outer Join retornará todos os regristros das tabelas envolvidas 
mesmo que não haja nenhuma relação entre os registros das tabelas 
envolvidas levando em consideração a da esquerda - (mais ou menos 
isto).

select c.nome,
       e.sigla
from cidades c
left outer join estado e on (e.cod_estado = c.cod_estado)

Neste exemplo serão retornados todos os registros de cidades mesmo que 
não haja estado relacionado com a mesma... ficando o campo sigla neste 
caso = null.

Left Right Join - fará o mesmo que o outer join com a seguinte 
diferença, levará em consideração a tabela da direita.

Inner Join só retornará os registros que efetivamente tiver relação. No 
exemplo dado acima só seriam retornados os registros onde houvesse 
relação de algum estado com a cidade.

> E porque junto deles usa-se o operador on e pra que este serve?
   ??? aqui não sei lhe dizer... fico devendo..
> Obrigado pela atenção.

O ideal é o amigo adquirir ou até mesmo pegar em alguma biblioteca um 
livro de banco de dados, para poder obter todos esses conceitos mais 
detalhadamente. Recomendo o livro "Sistemas de Banco de Dados" de RAMEZ 
E. ELMASRI & SHAMKANT NAVATHE

Sds,
HPensador.







Mais detalhes sobre a lista de discussão lista