Visual Basic - Ayudar a juntar campos en horizontal

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Ayudar a juntar campos en horizontal

Publicado por Carlos (4 intervenciones) el 10/12/2014 01:13:37
HOLA ME PODRIAN AYUDAR CON LA SIGUIENTE CONSULTA

TABLA PERIODO
PER_ID(PK)
----------------
TABLA PRODUCTO
PRO_ID(PK)
PRO_NOMBRE
------------------
TABLA VALOR
VAL_ID
VAL_PRECIO
VAL_PRO_ID(FK)
VAL_PER_ID(FK)
----------------CONSULTA-----------------
select P.PRO_NOMBRE AS NOMBRE, V.VAL_PRECIO AS VALOR, V.VAL_PER_ID AS PERIODO
FROM PRODUCTO P, VALOR V,
WHERE V.VAL_PRO_ID=P.PRO_ID
1
2
3
4
5
6
7
8
------------------- LA CONSULTA MUESTRA-----------------
NOMBRE   VALOR    PERIODO
producto1   12     1
producto2   15     1
producto3   20     1
producto1   33     2
producto2   12     2
producto3   11     2

1
2
3
4
5
--------------QUISIERA VER LA CONSULTA ASI----------------
NOMBRE       PERIODO 1  PERIODO 2
producto1       12        33
producto2       15        12
producto3       20        11
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 xve
Val: 107
Ha disminuido su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ayudar a juntar campos en horizontal

Publicado por xve (208 intervenciones) el 10/12/2014 07:56:14
Hola Carlos, no lo he probado,y no se que base de datos estas utilizando, pero creo que funcionaria en MySQL

1
2
3
4
5
6
7
8
9
10
11
12
13
select s1.NOMBRE, s1.PERIODO_1, s2.PERIODO_2 from
(
select P.PRO_NOMBRE AS NOMBRE, V.VAL_PRECIO AS PERIODO_1
FROM PRODUCTO P, VALOR V
WHERE V.VAL_PRO_ID=P.PRO_ID AND  V.VAL_PRECIO=1
} s1
LEFT JOIN
(
select P.PRO_NOMBRE AS NOMBRE, V.VAL_PER_ID AS PERIODO_2
FROM PRODUCTO P, VALOR V
WHERE V.VAL_PRO_ID=P.PRO_ID AND  V.VAL_PER_ID=2
} s2
ON s1.NOMBRE=s1.NOMBRE

Ya nos comentaras, ok?
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