Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/02/2011, 06:19
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Problemas con SUM() y SELECT

No se puede usar funciones agregadas en un WHERE, es decir que no puedes usar MIN(), MAX(), SUM(), AVG() ni nada parecido. Es una restricción general de los DBMS porque una función agregada sólo puede aplicarse sobre resultados finales, que son los que se obtienen de ella, mientras que el WHERE se aplica a cada registro individualmente. SOn lógicas incompatibles.
Para usar una condición a cumplir obtenida por SUM() debes hacerlo con HAVING:
Código MySQL:
Ver original
  1.     documento,
  2.     SUM(pago) pagotot
  3.     tabla
  4.     fecha>'$fecha_promo'
  5. GROUP BY documento
  6. HAVING pagotot > '$saldo_promo';
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)