Observe que cada comando SELECT no UNION deve ter a mesma quantidade de colunas, as colunas devem ser de tipos de dados similares e tambem as colunas devem estar na mesma ordem.
Sintaxe do UNION
1:SELECT nome_coluna(s) FROM nome_tabela1
2:UNION
3:SELECT nome_coluna(s) FROM nome_tabela2
Nota: O operador UNION seleciona somente os valores distintos por padrão. Para permitir valores duplicados, use o UNION ALL.Sintaxe do UNION ALL
1:SELECT nome_coluna(s) FROM nome_tabela1
2:UNION ALL
3:SELECT nome_coluna(s) FROM nome_tabela2
Nota: Os nomes das colunas no resultset de um UNION são sempre iguais aos nomes de colunas do primeiro comando SELECT no UNION.Exemplo de UNION
Observe as seguintes tabelas:
Funcionarios_Europeus:
id | nome |
---|---|
01 | Hansen, Ola |
02 | Svendson, Tove |
03 | Svendson, Stephen |
04 | Pettersen, Kari |
Funcionarios_Americanos:
id | nome |
---|---|
01 | Turner, Sally |
02 | Kent, Clark |
03 | Svendson, Stephen |
04 | Scott, Stephen |
Agora nós queremos listar todos os funcionários europeus e americanos:
1:SELECT nome FROM Funcionarios_Europeus
2:UNION
3:SELECT nome FROM Funcionarios_Americanos
O resultado ficará assim:nome |
---|
Hansen, Ola |
Svendson, Tove |
Svendson, Stephen |
Pettersen, Kari |
Turner, Sally |
Kent, Clark |
Scott, Stephen |
Nota: Este comando não pode ser usado para listar todos os funcionários Europeus e Americanos. No exemplo acima nos temos dois funcionários com nomes iguais e apenas um deles será mostrado. O comando UNION mostra somente valores distintos.
Exemplo de UNION ALL
Agora nos queremos listar todos os funcionarios Europeus e Americanos:
1:SELECT nome FROM Funcionarios_Europeus
2:UNION ALL
3:SELECT nome FROM Funcionarios_Americanos
Resultado:nome |
---|
Hansen, Ola |
Svendson, Tove |
Svendson, Stephen |
Pettersen, Kari |
Turner, Sally |
Kent, Clark |
Svendson, Stephen |
Scott, Stephen |
Fonte
Nenhum comentário:
Postar um comentário