10. Consultas de Unión Externas

Se utiliza la operación UNION para crear una consulta de unión, combinando los resultados de dos o
más consultas o tablas independientes. Su sintaxis es:

[TABLE] consulta1 UNION [ALL] [TABLE]
consulta2 [UNION [ALL] [TABLE] consultan [ ... ]]

En donde:

consulta1,
consulta2, consultan
: Son instrucciones SELECT,
el nombre de una consulta almacenada o el nombre de una tabla almacenada precedido
por la palabra clave TABLE.

Puede combinar los resultados de dos o
más consultas, tablas e instrucciones SELECT,
en cualquier orden, en una única operación UNION.
El ejemplo siguiente combina una tabla existente llamada Nuevas Cuentas y una instrucción SELECT:

TABLE [Nuevas Cuentas] UNION ALL SELECT
* FROM Clientes
WHERE [Cantidad pedidos] > 1000;

Si no se indica lo contrario, no se devuelven
registros duplicados cuando se utiliza la operación UNION,
no obstante puede incluir el predicado ALL para asegurar que se devuelven todos los registros. Esto hace que la consulta
se ejecute más rápidamente. Todas las consultas en una operación UNION deben pedir el mismo número
de campos, no obstante los campos no tienen porqué tener el mismo tamaño
o el mismo tipo de datos.

Se puede utilizar una cláusula GROUP BY y/o HAVING en cada argumento consulta para agrupar los datos devueltos. Puede utilizar
una cláusula ORDER BY al
final del último argumento consulta para visualizar los datos devueltos
en un orden específico.

SELECT [Nombre de compañía],
Ciudad FROM Proveedores WHERE
País = 'Brasil' UNION SELECT [Nombre de compañía],
Ciudad FROM Clientes
WHERE País = "Brasil"

Recupera los nombres y las ciudades de
todos proveedores y clientes de Brasil

SELECT [Nombre de compañía],
Ciudad FROM Proveedores WHERE País = 'Brasil'
UNION SELECT [Nombre de compañía], Ciudad FROM Clientes WHERE
País = 'Brasil' ORDER BY Ciudad

Recupera los nombres y las ciudades de
todos proveedores y clientes radicados en Brasil, ordenados por el nombre de
la ciudad.

SELECT [Nombre de compañía],
Ciudad FROM Proveedores WHERE País = 'Brasil'
UNION SELECT [Nombre de compañía], Ciudad FROM Clientes WHERE
País = 'Brasil' UNION SELECT [Apellidos], Ciudad FROM Empleados WHERE Región
= 'América del Sur

Recupera los nombres y las ciudades de
todos los proveedores y clientes de brasil y los apellidos y las ciudades de
todos los empleados de América del Sur.

TABLE [Lista de clientes] UNION TABLE
[Lista de proveedores]

Recupera los nombres y códigos
de todos los proveedores y clientes.

Siguiente capítulo: Estructuras
de las Tablas

banner

  1. Introducción
  2. Consultas
    de Selección
  3. Criterios
    de Selección
  4. Agrupamiento
    de Registros y Funciones Agregadas
  5. Consultas
    de Actualización
  6. Tipos
    de Datos
  7. SubConsultas
  8. Consultas
    y Referencias Cruzadas
  9. Consultas
    de Unión Interna
  10. Consultas
    de Unión Externas
  11. Estructuras
    de las Tablas
  12. Consultas
    con Parámetros
  13. Acceso
    a las Bases de Datos Externas
  14. Omitir los permisos de ejecución
  15. La
    Cláusula Procedure
  16. Anexos