Cita: pero lo que yo quiero que me muestre es esto:
id_____matrize_id_____depositos______retiros_____b alance
1________1___________42353_________604______41749
2_________2__________4______________18_______-14
3_________3___________66____________67______-1
4_________3___________14____________28______-15
Perdona, pero si esto es lo que necesitas, te estás complicando innecesariamente:
Código MySQL:
Ver original -> `matrices_id`,
-> `depositos`,
-> `retiros`,
-> SUM(`depositos`- `retiros`) balance
-> FROM `test`.
`op_martices` +-------------+-----------+---------+---------+
| matrices_id | depositos | retiros | balance |
+-------------+-----------+---------+---------+
| 1 | 42353 | 604 | 41749 |
| 2 | 4 | 18 | -14 |
| 3 | 66 | 67 | -15 |
+-------------+-----------+---------+---------+
Las variables de usuario no son necesarias nada más que para obtener una acumulación progresiva,
que no es lo que estás buscando.
Ahora bien, si lo que quieres es que sume secuencialmente, mostrando el resumen de subtotales, no es buena idea usar las variables, porque deberías escribirlas con condicionales y necesitarías una o dos más como flags.
Es algo demasiado complicado para iniciarte en este tema.
Lo que sí puedes hacer es usar una clausula adicional:
Código MySQL:
Ver original CAST(
'Total',
`balance`
`matrices_id`,
`depositos`,
`retiros`,
SUM(`depositos`- `retiros`) balance
FROM `test`.
`op_martices`
Esto daría:
Código MySQL:
Ver original+-------------+-----------+---------+---------+
| matrices_id | depositos | retiros | balance |
+-------------+-----------+---------+---------+
| 1 | 42353 | 604 | 41749 |
| Subtotal | | | 41749 |
| 2 | 4 | 18 | -14 |
| Subtotal | | | -14 |
| 3 | 14 | 28 | -14 |
| 3 | 66 | 67 | -1 |
| Subtotal | | | -15 |
| Total | | | 41720 |
+-------------+-----------+---------+---------+
Como verás, no es una solución para nada sencilla, pero es posible.