Autor YouCode - http://www.youcode.com.ar/mysql/como-obtener-los-saldos-de-ctacte-debe-y-haber-445
Las columnas típicas, debe,haber y saldo, veremos como obtener el saldo con un simple query
Usaremos un par de variables en nuestro query, algo interesante para resolver muchos calculos on-flySELECT @nfilas:=@nfilas+1 AS orden, tabla_ctacte.fechas, tabla_ctacte.debe, tabla_ctacte.haber, @total:=@total+(tabla_ctacte.debe-tabla_ctacte.haber) AS saldos FROM tabla_ctacte, (SELECT @nfilas:=0) AS tmp1, (SELECT @total:=0) AS tmp2 WHERE tabla_ctacte.idcuenta="100" ORDER BY tabla_ctacte.fechascomo vemos, declaramos en el FROM un par de variables y les asignamos el valor 0 , cada variable (segun sea tratada) acumula en cada "vuelta" del query el valor que querramos. Como se ve, TOTAL va acumulando la cuenta de las columnas DEBE y HABER , en cada "vuelta" se incrementa o no segun los valores de las columnas, el resultado es :
orden | fecha | debe | haber | saldos |
1 | 31/3/2018 | 0,0 | 10000,0 | -10000,0 |
2 | 31/3/2018 | 1000,0 | 0,0 | -9000,0 |
3 | 31/3/2018 | 0,0 | 2000,0 | -11000,0 |
4 | 31/3/2018 | 1000,0 | 0,0 | -10000,0 |
5 | 31/3/2018 | 1500,0 | 0,0 | -8500,0 |
6 | 31/3/2018 | 9000,0 | 0,0 | 500,0 |
7 | 31/3/2018 | 0,0 | 8500,0 | -8000,0 |
obtenemos el saldo calculado...
http://www.youcode.com.ar/mysql/como-obtener-los-saldos-de-ctacte-debe-y-haber-445