From: | "Sergio Valdes Hurtado" <svh(dot)pgsql(at)gmail(dot)com> |
---|---|
To: | "Lista PostgreSql" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Necesito sumar un campo obviando algunos registros |
Date: | 2007-05-15 17:04:51 |
Message-ID: | 9032d01f0705151004p6f33f147k7700b02bf5317dfd@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Estimados,
Tengo una tabla en que se registra la asistencia diaria de los cursos
y que está definida de la siguiente forma:
id Varchar 30
mes integer
año integer
d1 integer
d2 integer
.
.
.
d31 integer
.
.
En los campos d1 a d31 se registra la asistencia diaria a los cursos.
Cada uno de estos campos registra la asistencia con un valor de 0 a 45
(0 indica que nadie asistió a clases y 45 es la asistencia máxima
definida para cada clase), pero además se registra un valor -1 si no
se tomó asistencia en un cierto día.
El problema es que ahora necesito hacer un informe que me sume la
asistencia diaria y que incluya todos los cursos de ese día, y me
encuentro en que hay algunos días en que hay cursos que se toma
asistencia (por lo que quedan con un valor entre 0 y 45) y otros
cursos que no tienen clase y por lo tanto no se toma asistencia (por
lo que quedan con un valor -1).
Cuando hago la suma de esos días, el valor queda distorsionado ya que
los valores -1 los va restando de los cursos que efectivamente tienen
clases.
¿Como puedo hacer para que no tome en cuenta los valores -1 en la suma?
No puedo cambiar la estructura de las tablas, ya que es un sistema
heredado y que ya se encuentra funcionando, pero nos han pedido ir
agregándole algunos informes.
La consulta que se esta haciendo es:
Select sum(d1), sum(d2), ...., sum(d31)
where ......
Gracias de antemano por su ayuda.
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2007-05-15 17:20:00 | Re: Necesito sumar un campo obviando algunos registros |
Previous Message | Gabriel Hermes Colina Zambra | 2007-05-15 16:50:29 | Re: Eliminar blancos en DB |