Operador UNION
O operador UNION
combina os resultados de duas ou mais instruções SELECT
em um único resultado. Esse resultado é todos os registros retornados pelas instruções SELECT
. Por padrão, os registros duplicados não são retornados. Para retornar registros duplicados, use a palavra-chave ALL
(UNION ALL
). O formato é:
SELECT declaração UNION [ALL] SELECT declaração
Ao usar o operador UNION
, as listas de seleção de cada instrução SELECT
devem ter o mesmo número de expressões de coluna, com os mesmos tipos de dados, e devem ser especificadas na mesma ordem.
SELECT sobrenome, salário, data_contratação FROM func UNION SELECT nome, pago, data_nascimento FROM pessoa
O exemplo a seguir não é válido porque os tipos de dados das expressões de coluna são diferentes (SALÁRIO
em FUNC
tem um tipo de dados diferente de SOBRENOME
em AUMENTOS
). Esse exemplo tem o mesmo número de expressões de coluna em cada instrução SELECT
, mas as expressões não estão na mesma ordem por tipo de dados.
SELECT sobrenome, salário FROM func UNION SELECT salário, sobrenome FROM aumentos