Diferença entre junção interna e junção natural

o diferença chave entre Junção Interna e Junção Natural é que A junção interna fornece o resultado com base nos dados correspondentes de acordo com a condição de igualdade especificada na consulta, enquanto a junção natural fornece o resultado com base na coluna com o mesmo nome e o mesmo tipo de dados presentes nas tabelas a serem unidas.

O DBMS permite armazenar, recuperar e manipular dados com facilidade. Ele armazena dados na forma de tabelas. Cada tabela consiste em linhas e colunas. As linhas representam cada entidade, enquanto as colunas representam os atributos. Suponha um banco de dados de Alunos. Cada linha representa um aluno. As colunas representam os atributos como ID, nome, nota, idade. Um DBMS é uma coleção de tabelas e cada tabela é relacionada usando restrições como chaves estrangeiras. Às vezes, não é suficiente usar uma única tabela. Existem situações que exigem o uso de várias tabelas. Para combinar duas tabelas, pelo menos uma coluna deve ser comum. A combinação de tabelas é chamada de junção.

CONTEÚDO

1. Visão geral e principais diferenças
2. O que é Junção Interna
3. O que é a junção natural
4. Relação entre junção interna e junção natural
5. Comparação lado a lado - junção interna x junção natural em forma de tabela
6. Resumo

O que é Junção Interna?

Exemplo para uma junção interna é o seguinte. Abaixo está a tabela do aluno.

A tabela student_info é a seguinte.

Para executar a junção interna, deve haver pelo menos uma correspondência entre as duas tabelas. O ID 1,2,3 é comum a ambas as tabelas. Portanto, é possível executar junção interna.

Figura 01: Junção SQL

A consulta INNER JOIN para ingressar nessas duas tabelas é a seguinte.

SELECT * do aluno

INNER JOIN student_info WHERE student.id = student_info.id;

A execução do comando SQL acima exibirá a seguinte tabela.

O que é a junção natural?

Exemplo para uma junção natural é o seguinte. Abaixo está a tabela do aluno.

A tabela student_info é a seguinte.

Para executar a junção natural, deve haver uma coluna com o mesmo nome e o mesmo tipo de dados. A coluna id é a mesma para as duas tabelas. Portanto, é possível unir essas duas tabelas naturalmente.

A consulta NATURAL JOIN para ingressar nessas duas tabelas é a seguinte.

SELECT * do aluno NATURAL JOIN student_info;

A execução do comando SQL acima exibirá a seguinte tabela.

Qual é a relação entre junção interna e junção natural?

  • Junção natural é um tipo de junção interna.

Qual é a diferença entre junção interna e junção natural?

A junção interna fornece o resultado com base nos dados correspondentes, de acordo com a condição de igualdade especificada na consulta, enquanto a junção natural fornece o resultado com base na coluna com o mesmo nome e o mesmo tipo de dados presentes nas tabelas a serem unidas. Além disso, a sintaxe da junção interna e da junção natural são diferentes.

Quando a tabela1 consiste em id, nome e table2 consistem em id e cidade, a junção interna fornecerá à tabela resultante as linhas correspondentes. Ele terá identificação, nome, novamente identidade e cidade. Por outro lado, em junção natural, fornecerá a tabela resultante com linhas correspondentes com as colunas id, nome, cidade.

 

Resumo - Junção Interna vs Junção Natural

A principal diferença entre junção interna e junção natural é que a junção interna fornece o resultado com base nos dados correspondentes, de acordo com a condição de igualdade especificada na consulta SQL, enquanto a junção natural fornece o resultado com base na coluna com o mesmo nome e o mesmo tipo de dados presentes nas tabelas a serem unidas.

Referência:

Ponto 1.Tutoriais. "SQL INNER JOINS". Ponto de tutoriais, 8 de janeiro de 2018. Disponível aqui

Cortesia da imagem:

1.'SQL Join - 07 A Inner Join B'By GermanX - Trabalho próprio, (CC BY-SA 4.0) via Commons Wikimedia