Diferença entre JOIN e UNION no SQL

Autor: Laura McKinney
Data De Criação: 2 Abril 2021
Data De Atualização: 5 Poderia 2024
Anonim
Diferença entre JOIN e UNION no SQL - Tecnologia
Diferença entre JOIN e UNION no SQL - Tecnologia

Contente


JOIN e UNION são as cláusulas no SQL, usadas para combinar os dados de duas ou mais relações. Mas a maneira como eles combinam dados e formato do resultado obtido é diferente. o JUNTE-SE A cláusula combina os atributos de duas relações para formar as tuplas resultantes, enquanto que, UNIÃO A cláusula combina o resultado de duas consultas. Vamos discutir a diferença entre JOIN e UNION com a ajuda do gráfico de comparação mostrado abaixo.

  1. Gráfico de comparação
  2. Definição
  3. Principais diferenças
  4. Conclusão

Gráfico de comparação

Base para ComparaçãoJUNTE-SEUNIÃO
BasicJOIN combina atributos das tuplas presentes nas duas relações diferentes que compartilham alguns campos ou atributos comuns.UNION combina tuplas das relações presentes na consulta.
CondiçãoJOIN é aplicável quando as duas relações envolvidas têm pelo menos um atributo comum.UNION é aplicável quando o número de colunas presentes na consulta é o mesmo e os atributos correspondentes têm o mesmo domínio.
TiposINTERNO, CHEIO (EXTERIOR), JUNÇÃO ESQUERDA, JUNTA DIREITA.UNIÃO e UNIÃO TODA.
EfeitoO comprimento das tuplas resultantes é maior em comparação com o comprimento das tuplas das relações envolvidas.O número de tuplas resultantes é maior em comparação com o número de tuplas presentes em cada relação envolvida na consulta.
Diagrama



Definição de JOIN

JUNTE-SE A cláusula no SQL combina as tuplas de duas relações ou tabelas, resultando em um tamanho de tupla mais longo. A tupla resultante contém atributos da relação. Os atributos são combinados com base nos atributos comuns entre eles. Os diferentes tipos de JOIN no SQL são JUNTA INTERNA, JUNTA ESQUERDA, JUNTA DIREITA, JUNTA EXTERNA COMPLETA.

JUNÇÃO INTERNA combina tuplas de ambas as tabelas, desde que haja um atributo comum entre elas. ASSOCIAÇÃO À ESQUERDA resulta em todas as tuplas da tabela esquerda e correspondente na tabela da direita. JUNTA DIREITA resulta em todas as tuplas da tabela da direita e somente na da esquerda. JUNÇÃO EXTERNA COMPLETA resulta em todas as tuplas da tabela, embora elas tenham atributos correspondentes ou não.


INNER JOIN é o mesmo que JOIN. Você também pode soltar a palavra-chave INNER e simplesmente usar JOIN para executar INNER JOIN.

Definição de UNIÃO

UNION é uma operação definida no SQL. UNON combina o resultado de duas consultas. O resultado de UNION inclui as tuplas de ambas as relações presentes na consulta. As condições que devem ser satisfeitas levam a UNIÃO de duas relações são:

  1. As duas relações devem ter o mesmo número de atributos.
  2. Os domínios do atributo correspondente devem ser os mesmos.

Existem dois tipos de UNIÃO que são UNIÃO e UNIÃO TUDO. O resultado obtido usando UNION não inclui duplicatas. Por outro lado, o resultado obtido com UNION ALL retém duplicado.

  1. A principal diferença entre JOIN e UNION é que JOIN combina as tuplas de duas relações e as tuplas resultantes incluem atributos de ambas as relações. Por outro lado, o UNION combina o resultado de duas consultas SELECT.
  2. A cláusula JOIN é aplicável apenas quando as duas relações envolvidas têm pelo menos um atributo comum em ambas. Por outro lado, a UNION é aplicável quando as duas relações têm o mesmo número de atributos e os domínios dos atributos correspondentes são os mesmos.
  3. Existem quatro tipos de JOIN INNER JOIN, ESQUERDA JOIN, DIREITA JOIN, COMPLETA EXTERNA. Mas existem dois tipos de UNION, UNION e UNION ALL.
  4. Em JOIN, a tupla resultante tem o tamanho maior, pois inclui atributos da relação. Por outro lado, em UNION, o número de tuplas é aumentado como resultado, incluindo a tupla de ambas as relações presentes na consulta.

Conclusão:

Ambas as operações de combinação de dados são usadas em diferentes situações. JOIN é usado quando queremos combinar atributos de duas relações com pelo menos um atributo em comum. UNION é usado quando queremos combinar as tuplas das duas relações presentes na consulta.