Ver Mensaje Individual
  #3  
Antiguo 28-01-2010
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Es como dice jhonny.

En una consulta de ese tipo, primero se seleccionan los registros aplicando cualquier criterio especifcado en la cláusula WHERE (en caso de haber alguno), luego se agrupan los registros según indique la cláusula GROUP BY, y finalmente se aplica la función agregada a cada grupo, como SUM en este caso.

Esto quiere decir que no puede aplicarse WHERE a una función agregada, pues para el tiempo en que se hace el filtro, aún no se agrupa ni se aplica la función. Para ello existe la cláusula HAVING. Para filtrar después de la agrupación.

Tu consulta quedaría más o menos así:

Código SQL [-]
Select Distint
id_vendor,
nombrevendor,
Sum(Total_periodo),
from vendor
group by id_vendor, nombrevendor
having sum(Total_periodo)  > 0

// Saludos
Responder Con Cita