Tutorial SQL UNION: Combinar resultados em tabela única
O comando SQL UNION
combina registros de duas ou mais tabelas em uma única tabela de resultados, eliminando duplicatas. Com ele, você torna-se capaz de reunir registros compatíveis em uma mesma tabela, para consultas de dados mais eficientes e organizadas.
O que é SQL UNION
?
Seja com registros como informações de clientes, preços ou produtos, dados de projetos ou financeiros, a manutenção de banco de dados complexos é um desafio. Isso inclui a necessidade de que administradores combinem registros relacionados em tabelas de resultados significativas. O comando SQL UNION
é frequentemente utilizado para isso. Usando UNION
para consultas de dados, comparações, análises ou modificações em registros, você pode combinar registros selecionados de uma ou mais tabelas e remover possíveis duplicatas.
Ao combinar UNION
com outros comandos SQL e funções como ORDER BY
, GROUP BY
, WHERE
ou HAVING
, você cria estruturas de dados relevantes conforme critérios claros para suas análises, relatórios ou atualizações. Com funções agregadas como SQL AVG ou SQL SUM, você também pode combinar tabelas e ao mesmo tempo calcular e ordenar os resultados conforme necessário.
Se você está começando agora a trabalhar com SQL, pode ser interessante conhecer conceitos básicos dessa linguagem de banco de dados. Nossa introdução SQL com exemplos apresenta as principais funções e os fundamentos da linguagem.
Sintaxe de SQL UNION
A estrutura básica do comando SQL UNION
é a seguinte:
SELECT ColunaA, ColunaB, … ou * FROM TabelaA
UNION
SELECT ColunaA, ColunaB, … ou * FROM TabelaB
sqlEsses são os parâmetros utilizados:
-
SELECT
: Com a palavra-chave SQL SELECT, você define as colunas que deseja combinar de duas tabelas. Com um asterisco*
, você pode selecionar todos os registros. O número de colunas selecionadas deve ser idêntico em cada elemento SELECT de uma instruçãoUNION
e estar na mesma ordem. -
UNION
: Combina os registros selecionados de duas tabelas em uma tabela de resultados.
Aplicações de SQL UNION
Se você deseja combinar registros relacionados de forma simples, como arquivos de clientes, dados financeiros ou informações de produtos e projetos de maneira simples, o SQL UNION
é a ferramenta ideal. Em várias indústrias, o comando SQL é utilizado, por exemplo, para as seguintes finalidades:
- Criar dossiês digitais completos a partir de dados de clientes, projetos, pacientes ou pedidos.
- Gerar relatórios de vendas ou comparar dados de diferentes departamentos.
- Analisar comportamento de compra para gerar leads.
- Analisar e comparar dados financeiros e de transações.
- Remover duplicatas de relatórios ou registros combinados.
- Avaliar quantidades de produção, entregas ou estoque.
- Agregar dados de pedidos e vendas para identificar tendências ou realizar análises de marketing.
Armazenamento de dados seguro, desempenho escalável e planos de servidor e hospedagem adaptados às suas necessidades: Conheça o SQL Server Hosting da IONOS. Escolha entre servidores em nuvem, VPS, servidores dedicados e hospedagem Linux, com toda segurança de dados.
Hospedagem VPS poderosa e de baixo custo para rodar suas aplicações sob medida, com assistente pessoal e suporte 24 horas.
- Armazenamento 100% SSD
- Pronto em 55 segundos
- Certificado SSL
Exemplos de aplicação de SQL UNION
Nossos exemplos práticos ilustram de maneira simples como combinar registros de forma eficiente com SQL UNION
.
Combinar dois conjuntos de dados em uma tabela
Suponha que você deseja combinar os registros das tabelas “Assinantes” e “Clientes” em uma tabela de resultados sem duplicatas, usando colunas como “Nome”, “Endereço” e “ID do Cliente”. Faça isso da seguinte maneira:
SELECT Nome, Endereço, ID_Cliente
FROM Assinantes
UNION
SELECT Nome, Endereço, ID_Cliente
FROM Clientes
sqlCombinar dados de funcionários de diferentes departamentos
Se você deseja combinar dados de funcionários dos departamentos de “Marketing” e “Vendas” usando colunas como “Nome” e “Cidade”, faça o seguinte:
SELECT Nome, Cidade
FROM Marketing
UNION
SELECT Nome, Cidade
FROM Vendas
sqlCombinar dois conjuntos de dados com UNION ALL
Neste exemplo, ilustramos como funciona o UNION ALL
que, ao contrário do comando UNION, gera uma tabela de resultados com todos os registros, incluindo duplicatas. Vamos supor uma tabela “Clientes” e uma tabela “Fornecedores”, que você deseja combinar com a condição de que os clientes e fornecedores sejam de “Londrina”. Proceda da seguinte maneira:
SELECT Nome, Cidade
FROM Clientes
WHERE Cidade = 'Londrina'
UNION ALL
SELECT Nome, Cidade
FROM Fornecedores
WHERE Cidade = 'Londrina'
GROUP BY Cidade;
sqlAlternativas a SQL UNION
Para combinar dados sem duplicatas, além do UNION
, existem outras opções que podem ser utilizadas. Aqui estão as mais importantes:
-
JOIN
: Com o comando SQLJOIN
, você pode combinar, consultar e vincular dados entre tabelas. Existem comandos comoINNER JOIN
,LEFT JOIN
,RIGHT JOIN
,FULL JOIN
eCROSS JOIN
. Com instruçõesJOIN
, você pode combinar registros de duas tabelas de maneira mais direcionada e flexível do que comUNION
, uma vez que pode definir condições usando a cláusulaON
. -
GROUP BY
: Com SQLGROUP BY
, você agrupa registros selecionados de colunas e tabelas com valores idênticos em uma tabela de resultados. -
ORDER BY
: Com o comando SQLORDER BY
, você define a ordem dos registros em uma tabela de resultados. -
SELECT DISTINCT
: Com o comando SQLSELECT DISTINCT
, você pode gerar uma tabela de resultados com apenas resultados de consulta exclusivos, sem duplicatas, de maneira semelhante aoUNION
. -
UNION ALL
: O comandoUNION ALL
funciona de forma semelhante aoUNION
, mas combina todos os registros da tabela selecionada, incluindo possíveis duplicatas.