From: | Sergio Daniel Gomez <sergiogomez(at)tostado(dot)com(dot)ar> |
---|---|
To: | Sergio Valdes Hurtado <svh(dot)pgsql(at)gmail(dot)com> |
Cc: | Lista PostgreSql <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Suma de Campos |
Date: | 2010-04-15 23:09:10 |
Message-ID: | 4BC79C96.5000701@tostado.com.ar |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Sergio Valdes Hurtado escribió:
> Estimados,
> Tengo una tabla con la siguiente estructura:
>
> RBD int -- Es un identificador de
> establecimientos educacionales
> ano_pago int -- Año de pago
> mes_pago int -- Mes de pago
> monto int -- Monto pagado
> tip_proc vachar(1) -- Identificador de Tipo de
> Proceso y puede tener el valor "N" o "S"
>
> En el caso de que el Tipo de Proceso sea "S", sólo los meses de Marzo
> a Diciembre tienen este tipo de pago, es decir no hay pagos "S" en los
> meses de Enero y Febrero.
>
> Pues bien, me piden un informe que sume los pagos por año por tipo de
> Proceso ("N" o "S") y para ello hice la siguiente consulta:
>
> SELECT rbd, sum(monto) FROM dbo.orden_pago
> where ano_pago =2009
> and tip_proc = "S"
> group by rbd
>
> El problema es que ahora me dicen que para este total debo incluir los
> meses de Enero y Febrero que tienen tipo de Pago "N" y sumarlo con lo
> que se obtiene en la consulta anterior.
>
> Mi pregunta es si se podrá hacer en una sola consulta?, ya que este es
> una base de datos heredada y sólo tenemos accesos de lectura y no
> podemos hacer funciones ni tablas temporales
>
> Saludos cordiales a todos
> --
> TIP 2: puedes desuscribirte de todas las listas simultáneamente
> (envía "unregister TuDirecciónDeCorreo" a majordomo(at)postgresql(dot)org)
>
Podría ser ?
SELECT rbd, sum(monto) FROM dbo.orden_pago
where ano_pago =2009
and (tip_proc = "S"
or (tip_proc = "N"
and (mes_pago = "Enero"
or mes_pago = "Febrero")
)
group by rbd
From | Date | Subject | |
---|---|---|---|
Next Message | mvillagomez | 2010-04-15 23:19:39 | Re: Suma de Campos |
Previous Message | Edwin Quijada | 2010-04-15 22:19:34 | RE: Exponer procedimientos almacenados como web services |