Estas son mis dos tablas:
______________________
|TABLA TICKET |
-------------------------
|id | ptotal |fecha|
-------------------------
_____________________
|TABLA INGRESOS |
------------------------
| id | idticket | ingreso |
-----------------------
ambas estan relaionadas, cade vez que se paga un ticket se crea un ingreso con el idticket del correspondiente ticket. El ticket puede quedar a medio pagar (en deuda).
por tanto puede que cada ticket tenga varios ingresos hasta quedar totalmente pagado.
Mi problema es la caja diaria. He creado este SELECT:
Código SQL
[-]SELECT IF (sum(ingresos.ingreso) > ticket.ptotal, ticket.ptotal, sum(ingresos.ingreso)) as totalingresos
FROM ticket LEFT JOIN ingresos ON ticket.id = ingresos.idticket
WHERE DAY(ingresos.fecha)=hoy
GROUP BY ticket.id;
de manera que me seleccione el ptotal del ticket o la suma de los ingresos segun sea este (el ptotal) mayor que la suma de los otros o viceversa, es decir si la suma de los ingresos del dia es menor que el ptotal del ticket cojo la suma de los ingresos, y si es al contrario osea se ha pagado totalmente el ticket cojo el ptotal del ticket.
El problema es que lo hace bien y me da una tabla con una columna de sumas de ingresos o ptotales en su defecto. pero no se como sumar esta columna para que me de un solo resultado que seria los ingresos del dia.
totalingresos
30
30
23
12
34
56
---
185 tendria que conseguir como resultado
esta comprobado y esta bien, pero nose como sumar ahora esta columna de numeros
si le meto un sum antes del if me da un problema de error de group by
Gracias por adelantado.