top of page

Diferença entre union e union all

  • Foto do escritor: Amanda Nascimento
    Amanda Nascimento
  • 7 de jan. de 2024
  • 1 min de leitura

Atualizado: 2 de jun.





  • UNION: A cláusula UNION combina os resultados de duas consultas, mas remove quaisquer linhas duplicadas do conjunto de resultados combinado. Isso significa que se houver linhas idênticas em ambas as consultas, apenas uma delas será incluída no resultado final.

    UNION: remove duplicatas.


  • UNION ALL: Por outro lado, a cláusula UNION ALL também combina os resultados de duas consultas, mas não remove linhas duplicadas. Isso significa que todas as linhas de ambas as consultas serão incluídas no resultado final, mesmo que existam duplicatas.

    UNION ALL: mantém duplicatas (mais rápido).



Em resumo, a diferença principal entre UNION e UNION ALL é que o UNION remove linhas duplicadas, enquanto o UNION ALL mantém todas as linhas, incluindo duplicatas, no resultado combinado.


Exemplo pratico.

Nas tabelas abaixo o nome João conta na tabela clientes e na tabela de Fornecedores

ree


Ao utilizar o UNION na consulta abaixo, será retornado apenas 1 João, sendo que existem dois.


SELECT nome

FROM tblCLientes

 

UNION

 

SELECT nome

FROM tblFornecedores

ORDER BY nome;


Se utilizo o UNION ALL, o retorno dos nomes será assertivo, visto que realmente o nome João deverá aparecer duas vezes.

 

SELECT nome

FROM tblCLientes

 

UNION ALL 

 

SELECT nome

FROM tblFornecedores

ORDER BY nome;

Posts recentes

Ver tudo

© 2017-2025  Criado e desenvolvido por Amanda Nascimento

  • Discord
  • GitHub
  • youtube
  • LinkedIn Amanda
bottom of page