Mostrando entradas con la etiqueta Consulta de unión. Mostrar todas las entradas
Mostrando entradas con la etiqueta Consulta de unión. Mostrar todas las entradas

2015-07-14

Crear una consulta de UNION y de UNION ALL en Ms Access

Title

Problema

Queremos crear una consulta de unión en Ms Access. Una consulta de unión combinará los resultados de varias consultas de selección. Si es de UNION combinará aquellos resultados únicos y si es UNION ALL combinará todos los resultados.

Partimos de las siguientes dos tablas cuyos dos primeros registros están duplicados en ambas tablas.

Solución

Creamos una consulta y después clic en SQL Vista SQL. O bien abrimos una consulta antigua y la guardamos posteriormente con otro nombre.(Ver notas)

  • UNION
  • SELECT Tabla1.*
    FROM Tabla1;
    UNION 
    SELECT Tabla2.*
    FROM Tabla2;
    
    Como se puede observar, la consultade UNION, tan solo incluye aquellos registros únicos, excluyendo los duplicados.
  • UNION ALL
  • SELECT Tabla1.*
    FROM Tabla1;
    UNION ALL
    SELECT Tabla2.*
    FROM Tabla2;
    
    Como se puede observar, la consultade UNION, incluye todos los registros incluidos los duplicados.

La consultas de unión, una vez guardadas, aparecerán con el símbolo de dos aros anidados en el panel de navegación.

Notas

Una consulta de unión es específica de SQL. Las consultas específicas de SQL no se pueden mostrar en la vista Diseño y, por lo tanto, deben escribirse directamente en SQL. En Microsoft Office Access 2007, se utiliza la ficha de objeto Vista SQL para escribir consultas específicas de SQL, incluidas consultas de unión.

Referencias

2015-04-03

Conectar una consulta de unión (union query) de Access desde Excel

Title

Problema

Si en Excel tratamos de obtener como datos externos una consulta de unión (union query) en Access, nos encontramos con que dicha consulta no aparece en el listado.

Ejemplo

Veamos por ejemplo la consulta de unión Clientes y proveedores por ciudad de la base de datos Neptuno.

Cuando desde Excel tratamos de vincular la consulta, ésta no aparece en el cuadro de diálogo de Seleccionar tabla.

Solución

Seleccionamos cualquier tabla o consulta de ese Access, y luego dos opciones:

  1. En Propiedades de conexión, en la ficha Definición, Texto del comando escribimos el nombre de la consulta de unión (union query). En este caso: Clientes y proveedores por ciudad y clic en Aceptar.
  2. Alternativamente podemos, en lugar de especificar el nombre de la consulta, copiar el código SQL dentro del cuadro Texto del comando.
SELECT Ciudad, NombreCompañía, NombreContacto, "Clientes" AS [Relación] 
FROM Clientes
UNION SELECT Ciudad, NombreCompañía, NombreContacto, "Proveedores"
FROM Proveedores
ORDER BY Ciudad, NombreCompañía;
Nube de datos