2 querys unificadas en 1

Mi pregunta se basa en como puedo lograr que los datos de 2 querys diferentes entren en una sola query . El problema esta en que los datos en las querys que quiero unificar están dispuestos horizontalmente, es decir, por columnas y la query que quiero obtener de la combinación necesito los datos verticales, o sea en filas.
(Los datos de ambas querys se relacionan 1 a 1. O sea el primer dato de una con el primero de la otra)

1 respuesta

Respuesta
1
Para unir 2 querys en 1 :
-Podemos hacer una 3ª query (consulta) la cual puede ser de union o de serlección.
Respecto a cambiar las filas por columnas o viceversa:
-Se suele emplear la consulta de tabla de referencias cruzadas.
Si especica un poco más que es lo que quiere hacer, preferentemente con casos prácticos, estaré encantado de seguir asesorándole.
Perdón, no quedo muy claro.
query1:
/ |*1* |*2* |*3* |
------------------
A |(a1)|(a2)|(a3)|
------------------
query2:
/ |*1* |*2* |*3* |
------------------
B |(b1)|(b2)|(b3)|
------------------
query unificada:
/ |*A* |*B* |
-------------
1 |(a1)|(b1)|
-------------
2 |(a2)|(b2)|
-------------
3 |(a3)|(b3)|
-------------
Espero que se entienda. 1,2,3 son los títulos de las columnas de las querys.
Tal como indica en su ultima versión, parece que ambas querys tienen las mismas columnas, así que pienso que
1º) tiene que hacer una consulta de union de query1 y query2, de forma que en dicha consulta exista un origen de datos global
Supongamos que la guarda como query3
El resultado de query 3 sería
/ |*1* |*2* |*3* |
------------------
A |(a1)|(a2)|(a3)|
B |(b1)|(b2)|(b3)|
------------------
Creo yo.
Pero este no parece ser la dificultad mayor de su cuestión puesto que para lo
2º) tiene que transformar las filas de query3 en columnas (y viceversa ) y para ello, no hay diferencia porque el origen de datos sea tabla o consulta.
Originalmente yo pensaba en una nueva consulta de referencias cruzadas donde hasta cierto punto se puede especificar que información se quiere usar como etiquetas de fila (hasta 3) campo para columnas, etc.
Si este método de la referencia cruzada resultase insuficiente por las limitaciones obvias de un asistente,
La trasposicion se podría devolver en una nueva tabla traspuesta, vacía, una tabla diseñada con el diseñador de tablas, que se podría vaciar y volver a rellenar
mediante programación.
Básicamente el programa en cuestión podría leer la tabla o consulta de origen, mediante un GetRows de su recordset lo cual devuelve automáticamente una estructura de datos en memoria similar a una matriz de dos dimensiones (filas y columnas o registros y campos) que puede recorrerse dentro de bucles for next grabando registro a registro y campo a campo la nueva tabla de destino traspuesta.
Si está dispuesto a proporcionarme una muestra de datos de query1 y query2 o de lo que damos en llamar query3 en formato tabla, y de la tabla vacía traspuesta de salida, pero no sabe confeccionar el código por si mismo yo podría intentar confeccionarselo si recibo su base de datos minimizada, compactada y comprimida con WinZip o WinRar en mi e-mail [email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas