SQL SERVER JOINS Tutorial com exemplos: INNER, LEFT, RIGHT, OUTER

Podemos recuperar dados de mais de uma tabela usando a instrução JOIN. Existem principalmente 4 tipos diferentes de JOINS no servidor SQL. Aprenderemos todos os JOINS no servidor SQL com exemplos:



  • INNER JOIN / junção simples
  • LEFT OUTER JOIN / LEFT JOIN
  • DIREITA OUTER JOIN / RIGHT JOIN
  • FULL OUTER JOIN

JUNÇÃO INTERNA

Este tipo de SQL server JOIN retorna linhas de todas as tabelas nas quais a condição de junção é verdadeira. Requer a seguinte sintaxe:

SELECT columns FROM table_1 INNER JOIN table_2 ON table_1.column = table_2.column; 

Usaremos as duas tabelas a seguir para demonstrar isso:



Mesa de Alunos:

Tabela de taxas:

O comando a seguir demonstra um INNER JOIN no servidor SQL com exemplo:



SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students INNER JOIN Fee ON Students.admission = Fee.admission 

O comando retorna o seguinte:

melhor software espião móvel para Android

Podemos dizer aos alunos quem pagou sua taxa. Usamos a coluna com valores comuns em ambas as tabelas, que é a coluna de admissão.

LEFT OUTER JOIN

Este tipo de junção retornará todas as linhas da tabela à esquerda mais os registros da tabela à direita com valores correspondentes. Por exemplo:

java pode ser descrito como:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students LEFT OUTER JOIN Fee ON Students.admission = Fee.admission 

O código retorna o seguinte:

Os registros sem valores correspondentes são substituídos por NULLs nas respectivas colunas.

DIREITO OUTER JOIN

Esse tipo de junção retorna todas as linhas da tabela à direita e apenas aquelas com valores correspondentes na tabela à esquerda. Por exemplo:

SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students RIGHT OUTER JOIN Fee ON Students.admission = Fee.admission 

A instrução para OUTER JOINS SQL server retorna o seguinte:

A razão para a saída acima é que todas as linhas na tabela Taxas estão disponíveis na tabela Alunos quando combinadas na coluna de admissão.

FULL OUTER JOIN

Este tipo de junção retorna todas as linhas de ambas as tabelas com valores NULL onde a condição JOIN não é verdadeira. Por exemplo:

SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students FULL OUTER JOIN Fee ON Students.admission = Fee.admission 

O código retorna o seguinte resultado para consultas FULL OUTER JOINS em SQL: