Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Ayuda con Query (https://www.clubdelphi.com/foros/showthread.php?t=82513)

AnuardMichelen 14-03-2013 01:14:49

Ayuda con Query
 
Hola a todos espero que se encuentres bien.

Estoy tratando de hacer un Query en firebird, lo que nesecito es construir varias columnas dependiendo de los ID que le especifique, ojala pueda darme a entender. Por ejemplo tengo este query:

Código SQL [-]
SELECT PS.id_servicio,
       S.nombre,
       PS.precio_empleado,
       PS.id_plan

FROM planes_servicios PS
INNER JOIN SERVICIOS S ON S.id_servicio = PS.id_servicio
WHERE PS.id_plan IN 
                    ('PHUMSP',
                     'HUMANOPDSS',
                     'PHUMRP',
                     'PHUMMAXP',
                     'PLANPHP',
                     'PLANSFS',
                     'PMAXHUMEMP')

Los PS.ID_PLAN, serian las columnas que quiero construir de manera vertical.

Gracias y saludos desde Republica Dominicana.

fjcg02 14-03-2013 09:20:01

Mira a ver si te vale con algo parecido...

Supongo que el valor que quieres en la matriz es PS.precio_empleado. El problema es si tienes que incluir algún valor más.

Código SQL [-]
SELECT PS.id_servicio,
       S.nombre,
       min( case when PS.id_plan= 'PHUMSP' then PS.precio_empleado else 0) as PHUMSP,
       min( case when PS.id_plan= 'HUMANOPDSS' then PS.precio_empleado else 0) as HUMANOPDSS,
...

FROM planes_servicios PS
INNER JOIN SERVICIOS S ON S.id_servicio = PS.id_servicio
WHERE PS.id_plan IN 
                    ('PHUMSP',
                     'HUMANOPDSS',
                     'PHUMRP',
                     'PHUMMAXP',
                     'PLANPHP',
                     'PLANSFS',
                     'PMAXHUMEMP')
GROUP BY PS.id_servicio, S.nombre

Saludos


La franja horaria es GMT +2. Ahora son las 20:36:42.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi