Recuperación de los campos de un registro en distintos registros

29/08/2003 - 12:33 por MetalManiac | Informe spam
Hola grupo, tengo un problema, tengo una tabla que cuenta con 12 campos
pertenecientes a los 12 meses del año. El hecho es que para hacer una
gráfica con Crystal Reports deberia recuperar los 12 campos del registro que
me interesa pero de forma que cada campo sea un registro. ¿Esto se puede
hacer?

Gracias ;)
 

Leer las respuestas

#1 Javier Loria\(MVP\)
29/08/2003 - 16:43 | Informe spam
Hola:
Lo mejor seria que cambiaras la estructura de la tabla o agregaras
una tabla con una fila para cada mes del ano, para mantener normalizar tu
BD, pero puedes hacer lo siguiente:
SELECT Pk, 1, Enero
FROM Tabla
UNION ALL
SELECT PK, 2, Febrero
FROM TABLA
UNION ALL
SELECT PK, 3, Febrero
FROM TABLA
UNION ALL

SELECT PK, 12, Diciembre
FROM TABLA

Asumiendo que las columnas se llaman Enero, Febrero, ...,Diciembre y que
quieres distinguirlas con el numero del mes. El ALL del UNION es opcional y
unicamente sirve para dar los resultados mas rapidamente, si eliminas el ALL
te dara la lista ordernada de acuerdo a las columnas de los campos, si
quieres un ordenamiento diferente usa un unico ORDER BY al final.

Saludos,


Javier Loria
Costa Rica (MVP)
Se aprecia la inclusion de DDL (CREATE, INSERTS, etc.)
que pueda ser copiado y pegado al Query Analizer.
La version de SQL y Service Pack tambien ayuda.

MetalManiac escribio:
Hola grupo, tengo un problema, tengo una tabla que cuenta con 12
campos pertenecientes a los 12 meses del año. El hecho es que para
hacer una gráfica con Crystal Reports deberia recuperar los 12 campos
del registro que me interesa pero de forma que cada campo sea un
registro. ¿Esto se puede hacer?

Gracias ;)

Preguntas similares