RE: Reporte sql semi-offtopic

From: "Conrado Blasetti" <conrado(at)mapfre(dot)com(dot)ar>
To: Oswaldo Hernández <listas(at)soft-com(dot)es>
Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Reporte sql semi-offtopic
Date: 2009-02-20 15:21:50
Message-ID: 76A99F19229DC440909CF1B905F8012C078E483E@sar001998.Mapfre.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Impresionante Oswaldo! Gracias.

Entre'nos... total no se entera nadie... No sabes lo problemático que fue la version anterior de este proyecto que estoy migrando, era en Access y cristal... codigo, parámetros, funciones de grupo, sumarizaciones, hardcodeo, etc, un calvario!

Gracias de nuevo.
Saludos,
Conrado

-----Mensaje original-----
De: Oswaldo Hernández [mailto:listas(at)soft-com(dot)es]
Enviado el: Viernes, 20 de Febrero de 2009 01:20 p.m.
Para: Conrado Blasetti
CC: pgsql-es-ayuda(at)postgresql(dot)org
Asunto: Re: [pgsql-es-ayuda] Reporte sql semi-offtopic

Conrado Blasetti escribió:
...
>
> Mas o menos lo que necesito, pero no logro que me agrupe en una sola linea
> Por ejemplo, los 3 primeros registros por periodo y cuota (1 ANTERIRO y C1), sumarizando los niveles. O Sea, que me quede:
>
> "1 ANTERIOR";"C1";10;45;0.00
> "1 ANTERIOR";"C2";10.00;0.00;20.00
>
> Eso si, quiero hacerlo en este mismo query, por que puede resolverse haciendo:
>

Prueba con:

SELECT
CASE
WHEN SUBSTRING(periodo::VARCHAR,1,4)::NUMERIC < 2009 THEN '1 ANTERIOR'
WHEN SUBSTRING(periodo::VARCHAR,1,4)::NUMERIC = 2009 THEN '2 ACTUAL'
ELSE '3 SIGUIENTE'
END AS periodo,
cuota,
SUM(CASE WHEN tipo='J' THEN valor ELSE 0.00 END) as jardin,
SUM(CASE WHEN tipo='P' THEN valor ELSE 0.00 END) as primaria,
SUM(CASE WHEN tipo='S' THEN valor ELSE 0.00 END) as secundaria
FROM foo
GROUP BY
CASE
WHEN SUBSTRING(periodo::VARCHAR,1,4)::NUMERIC < 2009 THEN '1 ANTERIOR'
WHEN SUBSTRING(periodo::VARCHAR,1,4)::NUMERIC = 2009 THEN '2 ACTUAL'
ELSE '3 SIGUIENTE'
END,
cuota

ORDER BY 1,2

Saludos,
--
*****************************************
Oswaldo Hernández
oswaldo (@) soft-com (.) es
*****************************************
PD:
Antes de imprimir este mensaje, asegúrese de que es necesario.
El medio ambiente está en nuestra mano.

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Angelo Astorga 2009-02-20 20:51:23 Compatibilidad RH enterprise 5.3 !!!
Previous Message Oswaldo Hernández 2009-02-20 15:20:00 Re: Reporte sql semi-offtopic