O que é: Union (SQL)

O que é Union (SQL)

O Union é um operador utilizado na linguagem SQL (Structured Query Language) para combinar o resultado de duas ou mais consultas em um único conjunto de resultados. Ele permite que você recupere dados de várias tabelas e os apresente como se fossem uma única tabela. O Union é uma das operações mais comuns e poderosas no SQL, e é amplamente utilizado em consultas complexas.

Funcionamento do Union

O Union funciona combinando as linhas de duas ou mais consultas em um único conjunto de resultados. Para que o Union funcione corretamente, as consultas devem ter o mesmo número de colunas e os tipos de dados das colunas devem ser compatíveis. O Union também remove automaticamente as duplicatas do conjunto de resultados final, garantindo que cada linha seja única.

Sintaxe do Union

A sintaxe básica do Union é a seguinte:

SELECT coluna1, coluna2, ... FROM tabela1
UNION
SELECT coluna1, coluna2, ... FROM tabela2;

É importante observar que as consultas dentro do Union devem ter a mesma quantidade de colunas e os tipos de dados das colunas devem ser compatíveis. Caso contrário, ocorrerá um erro de sintaxe.

Exemplo de uso do Union

Vamos supor que temos duas tabelas, “clientes” e “fornecedores”, e queremos obter uma lista de todos os contatos de ambas as tabelas. Podemos usar o Union para combinar os resultados das consultas nas duas tabelas:

SELECT nome, telefone FROM clientes
UNION
SELECT nome, telefone FROM fornecedores;

Essa consulta retornará uma lista de nomes e telefones de todos os clientes e fornecedores, sem duplicatas.

Union All

Além do Union, existe também o Union All. A diferença entre eles é que o Union All não remove as duplicatas do conjunto de resultados final. Ou seja, se houver linhas duplicadas nas consultas, elas serão mantidas no resultado final. O Union All é mais rápido do que o Union, pois não precisa verificar e remover as duplicatas.

Exemplo de uso do Union All

Suponha que temos duas tabelas, “vendas_2020” e “vendas_2021”, e queremos obter uma lista de todas as vendas realizadas nos dois anos. Podemos usar o Union All para combinar os resultados das consultas nas duas tabelas:

SELECT produto, data FROM vendas_2020
UNION ALL
SELECT produto, data FROM vendas_2021;

Essa consulta retornará uma lista de produtos e datas de todas as vendas realizadas em 2020 e 2021, incluindo possíveis duplicatas.

Considerações finais

O Union é uma ferramenta poderosa para combinar os resultados de consultas em um único conjunto de resultados. Ele permite que você recupere dados de várias tabelas e os apresente de forma coesa. No entanto, é importante lembrar que as consultas dentro do Union devem ter o mesmo número de colunas e os tipos de dados das colunas devem ser compatíveis. Além disso, é possível utilizar o Union All quando se deseja manter as duplicatas no resultado final.

Em resumo, o Union é uma funcionalidade essencial para consultas complexas no SQL, permitindo a combinação de dados de diferentes tabelas de forma eficiente e precisa.

//neeceeglogu.net/4/6850264