Inner Join, Left Join e Right Join

Inner Join, Left Join e Right Join
Inner Join, Left Join e Right Join

A clausula JOIN combina registros de duas ou mais tabelas em um banco de dados. O JOIN realiza a combinação de campos de duas tabelas, usando valores comuns a cada tabela. Existem quatro tipo de JOIN: INNER JOIN, OUTER JOIN, LEFT JOIN e RIGHT.

Inner Join

Um INNER JOIN é a operação de associação mais comum e pode ser considerado como o padrão JOIN. INNER JOIN cria uma nova tabela temporária de resultados através da combinação de valores de colunas de duas tabelas (A e B) com base nos PARAMETROS. A consulta compara cada linha de A com cada linha de B para encontrar todos os pares de linhas que satisfazem o JOIN.

Vamos a um exemplo de INNER JOIN.

Digamos que você tenha duas tabelas, tblPedido (IDPedido (PK), IDCliente (FK), Produto) e tblCliente (IDCliente(PK), NomeCliente).

Se fizer um SELECT no tblPedido, em IDCliente ira retornar apenas o código do Cliente. Digamos que você queira que na consulta, alem de retornar os dados de tblPedido, também retorne todos os dados da tabela tblCliente. Para isso você terá que usar o INNER JOIN. Usando INNER JOIN os retornará os seguinte campo:

(IDPedido (PK), IDCliente (FK), Produto, IDCliente(PK), NomeCliente.

Comando

SELECT * FROM tblPedido
INNER JOIN tblCliente
ON tblCliente.IDCliente = tblCliente.IDCliente

OBS: No INNER JOIN, caso alguma tabela algum campo em branco, o resultado será omitido.

LEFT JOIN

Similar ao INNER JOIN, porém ele trás todos os campos das tabelas A e B, mesmo que a tabela B tenha algum campo vazio.

RIGHT JOIN

Similar ao INNER JOIN, porém ele trás todos os campos das tabelas A e B, mesmo que a tabela A tenha algum campo vazio.

 Veja abaixo mais um vídeo que fala mais sobre Inner Join, Left Join e Right Join