UNION x UNION ALL
Qual a diferença entre UNION e...?
Este post será sobre uma pergunta que sempre me fazem. Qual a diferença entre UNION e UNION ALL?
Para começarmos vamos só relembrar 2 regas básicas para o uso do UNION/UNION ALL -Todas consultas devem ter o mesmo número de campos -O tipo de dado do Campo1 da Consulta1 deve ser igual ao tipo de dado do Campo1 da Consulta2 e assim por diante.
De forma breve, a diferença é que o UNION ALL apenas une os resultados de cada select. Enquanto o UNION não exibe valores repetidos, ou seja, ele faz um distinct antes, tornando a consulta mais onerosa. Vamos à prática:
DECLARE @Clientes2010 table (Nome varchar(50)) DECLARE @Clientes2011 table (Nome varchar(50))
INSERT INTO @Clientes2010 values ('Empresa X'),('Empresa Y'),('Empresa Z'), ('Empresa Alfa') INSERT INTO @Clientes2011 values ('Empresa A'),('Empresa B'),('Empresa Z'), ('Empresa Alfa')
SELECT Nome FROM @Clientes2010 UNION SELECT Nome FROM @Clientes2011 SELECT Nome FROM @Clientes2010 UNION all SELECT Nome FROM @Clientes2011


Plano de execução:Â

Análise:

Veja que o comando UNION foi quase 3 x mais oneroso comparado ao UNION ALL
DICA:
Se você está fazendo uma união de selects e você tem certeza que são valores diferentes(Pessoa FÃsica/Pessoa JurÃdica) , use sempre o UNION ALL, pois não fará diferença o Distinct e a performance será melhor.
Se você está fazendo uma união de selects e você tem certeza que são valores diferentes(Pessoa FÃsica/Pessoa JurÃdica) , use sempre o UNION ALL, pois não fará diferença o Distinct e a performance será melhor.
Related articles
Comando SQL Update usando Try Catch
Na prática e no database
SELECT Format Date Time for many countries
It is a good tip to use day by day
Creating a SiteMap using SQL Database
Como indexar melhor meu site e links?
Membership $5/mo
✓ Read full articles ✓ Read/write forums ✓ Access podcast ✓ Access full jobs opportunities ✓ Access eBooks ✓ Access magazine ✓ Access videos |
Subscribe now $5/mo |
Free
✓ Read open articles x Read/write forums ✓ Access podcast x Access full jobs opportunities x Access eBooks x Access magazine x Access videos |