Diferença entre junção interna e externa

Diferença chave: as junções no SQL são realizadas para combinar os dados de duas tabelas diferentes. Uma Junta Interna é uma condição que resulta nas linhas que satisfazem a cláusula 'where' em “todas as tabelas”; enquanto uma associação externa é uma condição que resulta nas linhas que satisfazem a cláusula "where" em "pelo menos uma das tabelas".

Ao implementar as junções, as tabelas temporárias são criadas, elas são baseadas em colunas. Deve haver sempre duas tabelas, para as condições de junção. Essas condições, em seguida, mesclam os respectivos componentes de uma tabela com os outros componentes e geram uma tabela inteiramente nova. O objetivo dessas tabelas é extrair os dados ou informações significativos e necessários. Dependendo das condições, existem dois tipos de junções, as junções interna e externa.

Uma “junção interna” é uma junção orientada por aplicativo. Ele é usado nessas tabelas de banco de dados que impõe a integridade referencial. Estes são os campos de associação que garantem não condições NULL. A junção interna é preferida principalmente em muitas transações, pois elas dependem dos padrões ACID (Atomicidade, Consistência, Isolamento, Durabilidade). Eles mantêm os dados protegidos e integrados, pois são confiáveis ​​nos bancos de dados relacionais. Juntamente com os bancos de dados relacionais, eles também são aplicáveis ​​nos data warehouses.

Sintaxe do SQL INNER JOIN:

SELECT column_name (s)

FROM table1

INNER JOIN table2

ON table1.column_name = table2.column_name;

A palavra-chave INNER JOIN seleciona todas as linhas das duas tabelas, desde que haja correspondência entre as colunas nas duas tabelas.

As junções internas dependem da seleção dos projetos e características do banco de dados. Conseqüentemente, essas junções internas são usadas nas associações Equi-Joins e Natural. No Equi Join, há um tipo específico de comparação que é usado para equalizar as duas tabelas dadas. Portanto, essa tabela usa o predicado igual. A junção natural é um tipo de junção Equi.

A sintaxe para Equi Join é a seguinte:

S ELE *

FROM table1, tabela 2

WHERE table1.coloumn_name = table2.coloumn_name;

Se as colunas em uma junção equi tiver o mesmo nome, a respectiva versão SQL fornecerá uma notação abreviada opcional que pode ser expressa pela construção USING como:

SELECIONAR *

FROM table1 INNER JOIN table2 USING (nome_da_coluna);

A sintaxe para junção natural é a seguinte:

SELECIONAR *

FROM table1 NATURAL JOIN tabela2;

Uma “junção externa” não precisa das condições correspondentes para os registros. Essa condição de junção mantém todos os outros registros, além dos registros não correspondentes. Essa junção é distribuída posteriormente nas condições de junção externa esquerda, direita e completa, que são implementadas de acordo com as condições e atributos desejados da tabela.

Junção Externa à Esquerda

A palavra-chave LEFT JOIN retorna todas as linhas da tabela à esquerda (table1), com as linhas correspondentes na tabela à direita (table2). Isso resulta “NULL” no lado direito quando não há correspondência.

A sintaxe para Junção Externa à Esquerda é a seguinte:

SELECT column_name (s)

FROM table1

LEFT OUTER JOIN table2

ON table1.column_name = table2.column_name;

Junção Externa Direita

A palavra-chave RIGHT JOIN retorna todas as linhas da tabela da direita (tabela 2), com as linhas correspondentes na tabela da esquerda (tabela 1). O resultado é NULL no lado esquerdo quando não há correspondência.

A sintaxe para Right Outer Join é a seguinte:

SELECT column_name (s)

FROM table1

DIREITO EXTERIOR JUNTO table2

ON table1.column_name = table2.column_name;

Junção Externa Completa

A palavra-chave FULL OUTER JOIN retorna todas as linhas da tabela da esquerda (table1) e da tabela da direita (table2). A palavra-chave FULL OUTER JOIN combina o resultado de junções esquerda e direita.

A sintaxe para a associação externa completa é:

SELECT column_name (s)

FROM table1

FULL OUTER JOIN table2

ON table1.column_name = table2.column_name;

Comparação entre a junção interna e a junção externa:

Junção interna

Outer Join

Função básica

As junções internas são basicamente usadas para encontrar linhas correspondentes entre duas tabelas.

Junção externa mantém as linhas de qualquer tabela ou ambas as tabelas.

Existência de variáveis ​​comuns

Aqui a variável comum deve obrigatoriamente estar em ambas as tabelas.

Aqui, a variável depende apenas da primeira tabela, que pode ou não estar presente na segunda tabela.

Retorna

A junção interna só retornará linhas nas quais haja uma correspondência com base no predicado de junção.

A associação externa retornará todas as linhas, sejam elas baseadas em correspondência ou não correspondidas no predicado de associação.

Costumava

Ele é usado para exibir os registros somente quando os registros estão presentes nas duas tabelas.

Ele é usado para visualizar todos os registros em apenas uma tabela.

Aplicável em

Eles são aplicáveis ​​em:

Equi-Join e

Junção Natural

Eles são aplicáveis ​​como:

Junção Externa à Esquerda

Junção Externa Direita

Junção Externa Completa

Recomendado

Artigos Relacionados

  • diferença entre: Diferença entre Harry Potter e o Senhor dos Anéis

    Diferença entre Harry Potter e o Senhor dos Anéis

    Diferença chave: Harry Potter é escrito por JK Rowling e publicado pela primeira vez em 1994. Lord of the Rings é mais antigo e foi publicado em 1954 por JRR Tolkien. Além disso, Harry Potter tem sete livros em sua série, enquanto o Senhor dos Anéis tem apenas três. Eles também têm enredos e histórias diferentes. Harry Po
  • diferença entre: Diferença entre o cisto e a fervura

    Diferença entre o cisto e a fervura

    Um cisto e uma fervura são duas condições comuns da pele que ocorrem entre as pessoas. Um cisto é uma cápsula fechada ou uma estrutura semelhante a uma bolsa. É tipicamente preenchido com material líquido, semi-sólido ou gasoso. A fervura, por outro lado, é uma infecção do folículo piloso. Uma fervur
  • diferença entre: Diferença entre ansiedade e ataques de pânico

    Diferença entre ansiedade e ataques de pânico

    Diferença chave: A ansiedade é uma resposta a um estressor. A ansiedade é um sentimento de medo, desconforto e preocupação. Pode estar enraizada em qualquer evento que faça alguém se sentir frustrado, irritado ou nervoso. Ataque de pânico é uma condição em que uma pessoa experimenta um súbito aparecimento de medo, nervosismo e / ou apreensão. É conhecido
  • diferença entre: Diferença entre DHTML e HTML5

    Diferença entre DHTML e HTML5

    Diferença chave: DHTML é essencialmente HTML dinâmico. É uma nova maneira de ver e controlar os códigos e comandos HTML padrão. DHTML é uma coleção de tecnologias que são usadas para criar sites interativos e animados. HTML5 é a quinta revisão do padrão HTML. HTML significa HyperText Markup Language. É uma lingu
  • diferença entre: Diferença entre o Dell Latitude 10 Windows Tablet e o Sony Xperia Z Tab

    Diferença entre o Dell Latitude 10 Windows Tablet e o Sony Xperia Z Tab

    Diferença chave: o tablet Latitude 10 é bastante fino e leve com 658 gramas. Os dispositivos vêm com uma tela de toque capacitiva LCD Wide View Angle de 10, 1 polegadas IPS (1366 X 768) e são alimentados por um processador Intel Atom Z2760 de 1, 8 GHz. A Sony anunciou recentemente sua renovada linha de smartphones e tablets. Ju
  • diferença entre: Diferença entre DSP e Microprocessador

    Diferença entre DSP e Microprocessador

    Diferença chave: Um microprocessador incorpora as funções da unidade de processamento central (CPU) de um computador em um ou poucos circuitos integrados (IC). A finalidade de um microprocessador é aceitar dados digitais como entrada, processá-los conforme as instruções e fornecer a saída. O processador DSP, por outro lado, é um tipo particular de microprocessador. DSP sig
  • diferença entre: Diferença entre o Samsung Galaxy Note 3 e o Note 3 Neo

    Diferença entre o Samsung Galaxy Note 3 e o Note 3 Neo

    Diferença chave: o Galaxy Note 3 vem com uma tela Super AMOLED de 5.7 polegadas e 1080p. O Samsung Galaxy Note 3 Neo é uma versão de preço mais baixo do Note 3 e vem com um display Super AMOLED de 5, 5 polegadas ligeiramente menor. Os ecrãs grandes tornaram-se uma tendência recente, com muitas pessoas a tornarem-se grandes ou a regressarem a casa - na maior parte das vezes, estão a tornar-se grandes. Telas
  • diferença entre: Diferença entre Sony Xperia P e Alcatel One Touch Idol

    Diferença entre Sony Xperia P e Alcatel One Touch Idol

    Diferença chave: o Sony Xperia P possui um ecrã táctil TFT de 4 polegadas que permite capacidades até 4 toques. A tela é resistente a riscos e tem um revestimento à prova de quebra. A tela sensível ao toque fornece aproximadamente 275 ppi de densidade de pixels, juntamente com a tecnologia WhiteMagic, que adiciona um pixel branco extra com o já presente vermelho, azul e verde. O Alca
  • diferença entre: Diferença entre ter e onde cláusula

    Diferença entre ter e onde cláusula

    Diferença chave: Ambos, 'Tendo' e 'Onde' são cláusulas que podem ser utilizadas no SQL. A cláusula 'Where' é aplicada primeiro às linhas individuais nas tabelas, usando as quais as linhas que atendem às condições na cláusula são agrupadas. A cláusula 'Having' é então aplicada às linhas no conjunto de resultados. Os grupos que

Escolha Do Editor

Diferença entre prefixo e sufixo

Diferença chave: O prefixo é uma parte de uma palavra que é adicionada a outra palavra, para alterar o significado dela. Como prefixo, um sufixo é também uma palavra que é adicionada a outra palavra, para mudar o significado dela. A principal diferença entre os dois é que, enquanto um prefixo é adicionado à frente da palavra, o sufixo é adicionado ao final do mesmo. A linguag