Unir dos o más consultas Select (UNION)



Cuando tenemos una consulta que nos genera unos registros dependiendo las condiciones y el origen de los datos (Tablas) y necesitamos unir esos registros con otros registros, que se generan de una consulta parecida a la cual se le ha cambiado alguna condición o el origen de los datos (Tablas), utilizamos la función UNION  la cual permite unir consultas.

Para usar la función UNION se deben tener la misma cantidad de columnas y el mismo tipo de dato.

Sentencia Base:
select 'A' Salida
  from dual
union
select 'E' Salida
  from dual;

Output:
 

Nota: Si los registros están duplicados los quita.

Por ejemplo tenemos la tabla datos la cual contiene 3 columnas con los siguientes datos.
  

Se tienen datos repetidos.

Realizamos dos consultas una que nos traiga los registros cuyo PAIS sea Colombia, y el otro que traiga todos los países diferentes a Colombia.

Consulta 1: El país Colombia





Consulta 2: Los países diferentes a Colombia.


Unir los registros de las dos consultas utilizando la función UNION.

select *
  from datos
 where pais = 'Colombia'
 union
select *
  from datos
 where pais != 'Colombia' ;

Output:
 
La función UNION removió de la consulta los valores duplicados que pertenecían al país Colombia

No hay comentarios:

Publicar un comentario