Access - consulta de union

 
Vista:
sin imagen de perfil

consulta de union

Publicado por jose maria (89 intervenciones) el 31/07/2013 11:27:01
hola, tengo una tabla donde guardo datos sobre preferencias, con lo cual encontramos 4 campos tales como:
preferencia1
preferencia2
preferencia3
preferencia4
en cada uno de ellos los anexo a otra tabla donde estan las preferencias.
en la tabla donde guardo preferencia1....... hay un campo llamado exp que identifica cada usuario....
osea:

usuario preferencia1 preferencia2 preferencia3 preferencia4
1 pittza bocadillos galletas tartas
2 tartas cafe pitta bizcocho
3 tartas bacadillos pitta cafe


por otra parte hice cuatro consultas independientes que me muestran el numero total de los usuarios con esa preferencia, osea

preferencia1 resultado
pittza 1
tartas 2

preferencia2 resultado
bocadillos 2
cafe 1

y asi hasta la cuarta preferencia......
lo que deseo ahora es unir en una consulta esos resultados
osea:

preferencia resultado
pittza 3
bocadillos 2
galletas 1
tartas 3
cafe 2
bizcocho 1

como vemos ahora solo nos muestra el total de cada preferencia......
pense hacerlo con una consulta de union, pero no controlo access asi que ya no intento mas con sql
¿como podria hacerlo? ¿hay otra forma mas facil?

las consultas independientes las estruture asi:
-se muestra la tabla con datos de exp y preferencia1........
-hago dos columnas de esta forma:

columna1 columna2
campo: preferencia1 total de primera opcion:preferencia1
tabla: tabla1 tabla1
total: agrupar por cuenta
orden: descendente
mostrar: si si
criterios:
o:

gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Neckkito
Val: 529
Plata
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

consulta de union

Publicado por Neckkito (1157 intervenciones) el 01/08/2013 00:29:30
Hola, José María:

Si haces la consulta de unión con la estructura con que tienes hechas las consultas no te va a funcionar, porque la consulta de unión te va a suprimir los valores que tengan valores coincidentes.

Lo que debes hacer es lo siguiente:

1.- En cada una de las consultas añade, como primer campo (es decir, como primera columna), también el usuario. El resto de la consulta déjalo así como está.

2. Te creas una consulta de Unión. Para ello creas una consulta en vista diseño y no selecciones ninguna tabla o consulta. La sitúas en vista SQL y escribes lo siguiente:

...
SELECT * FROM CPreferencia1
UNION
SELECT * FROM CPreferencia2
UNION
SELECT * FROM CPreferencia3
UNION
SELECT * FROM CPreferencia4;
...

Donde CPreferenciaX serían los distintos nombres de tus cuatro consultas.

3.- A continuación te creas una consulta sobre esa consulta de unión y añades sólo los campos que te muestren la preferencia (tarta, pitza...) y el campo CUENTADE... (el nombre que te haya salido).

Cuando tengas la estructura hecha conviertes esa consulta en una consulta de totales, y sobre la segunda columna (la de CUENTADE...) agrupas por suma.

Y eso debería darte los totales que buscas.

A ver si te funciona bien.

Un saludo,


http://neckkito.siliconproject.com.ar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar