Ver Mensaje Individual
  #4 (permalink)  
Antiguo 19/04/2011, 06:31
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: 16 años, 5 meses
Puntos: 2658
Respuesta: Funcion de saldo en MySql

Bueno, este es fácil: Te falta una coma en la segunda columna:
Código MySQL:
Ver original
  1.   sum(if(signo='+',importe,0)) as ingresos,
  2.   sum(if(signo='-',importe,0)) as reintegros,
  3.   sum(if(signo='+',importe,0)-if(signo='-',importe,0)) as Saldo
  4. FROM cuentacorriente LEFT JOIN tipomovimientos USING (idtipomovimiento)
  5. WHERE idusuario=2;
Ahora bien, ¿tienes un campo que define si debes sumar o restar el importe? Eso no resulta un modelo eficiente ni razonable.
Los DEBE y HABER de las cuentas se crean separadamente porque son atributos y conceptos completamente diferentes. Modelarlo en un sólo campo te haría reprobar en cualquier cursada de Análisis de Sistemas o Base de Datos.
Lo que estás poniendo es como usar la misma columna en el libro de Caja en un negocio para sumar o restar. No puedes.
Además te aclaro que la consulta sería muchísimo más fácil de escribir si pones las cosas correctamente.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)