Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Tabla gastos por meses

Estas en el tema de Tabla gastos por meses en el foro de PHP en Foros del Web. Muy buenas cracks, Estoy liado con algo que creo que debería ser simple pero no logro sacarlo adelante. Tengo una base de datos sencilla con ...
  #1 (permalink)  
Antiguo 24/05/2017, 05:23
 
Fecha de Ingreso: agosto-2009
Mensajes: 216
Antigüedad: 14 años, 8 meses
Puntos: 3
Tabla gastos por meses

Muy buenas cracks,

Estoy liado con algo que creo que debería ser simple pero no logro sacarlo adelante.

Tengo una base de datos sencilla con filas para determinar los gastos. Cada vez que hay un gasto se introduce en la base de datos. Algunos campos son fecha, importe y motivo del gasto. Esto, sin ningún problema.

Ahora quiero mostrar estos datos en una tabla. El header de la tabla es algo como: Motivo, Enero, Febrero, Marzo….

Quiero mostrar la suma de todos los gastos por mes, es decir, imaginemos que en Enero he gastado 51€ en gasolina divididos en 2 pagos, el 3 de Enero y el 24 (por poner un ejemplo). Entonces, en la fila de Gasolina, en la columna Enero, debería aparecer 51.

Si por ejemplo, he gastado en Amazon 32€ en Febrero y 43 en Marzo. Debe aparecer en la fila Amazon para la columna Febrero 32€ y para la columna Marzo 43€. El resto, quisiera rellenarlas con un guion (-).

Por más que lo intento, no soy capaz de dar con la clave. Ya que, si solo hay una coincidencia (por ejemplo, un solo gasto anual), no hay problema, pero cuando hay más de uno, solo imprime el primero bien y el resto nada.

A alguien se le ocurre alguna idea para hacer esto?

Gracias por anticipado.
  #2 (permalink)  
Antiguo 24/05/2017, 13:43
Avatar de julia2021  
Fecha de Ingreso: diciembre-2014
Ubicación: Mexico
Mensajes: 152
Antigüedad: 9 años, 4 meses
Puntos: 11
Respuesta: Tabla gastos por meses

Puedes probar con la funcion SUM de MySQL, y armas una consulta algo así como:

Código MySQL:
Ver original
  1. SELECT SUM(importe) FROM tabla_gastos WHERE mes ='Enero';
  #3 (permalink)  
Antiguo 24/05/2017, 14:34
Avatar de KATHYU  
Fecha de Ingreso: julio-2013
Mensajes: 547
Antigüedad: 10 años, 9 meses
Puntos: 46
Respuesta: Tabla gastos por meses

Debe agrupar la suma de los importes por motivo, eso hará que si en enero tiene dos castos de gas y en febrero solo uno, en ambos meses solo se vea un único gasto de gas con la suma correspondiente.
Código SQL:
Ver original
  1. SELECT mes,motivo,SUM(gasto) AS gasto FROM gasto WHERE mes='enero' GROUP BY motivo
__________________
Al contrario de lo que muchos podrían afirmar, ayudar no te hace pobre, sino más rico.
  #4 (permalink)  
Antiguo 25/05/2017, 00:38
 
Fecha de Ingreso: agosto-2009
Mensajes: 216
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: Tabla gastos por meses

Muchísimas gracias por vuestra ayuda!

Al final lo solucioné "a lo burro" pero he podido optimizar la consulta gracias a vuestros comentarios :).

Lo dicho, muchas gracias!!
  #5 (permalink)  
Antiguo 25/05/2017, 01:53
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Tabla gastos por meses

Hola bienpiyao,

Me alegro de que lo hayas solucionado, sería bueno que, ya que lo has hecho y lo has marcado como tal, publicaras tu solución para que, si otra persona llega aquí con un problema como el tuyo, sepa que aquí encontrará la solución.
  #6 (permalink)  
Antiguo 25/05/2017, 11:31
Avatar de KATHYU  
Fecha de Ingreso: julio-2013
Mensajes: 547
Antigüedad: 10 años, 9 meses
Puntos: 46
Respuesta: Tabla gastos por meses

Cita:
Iniciado por bienpiyao Ver Mensaje
Muchísimas gracias por vuestra ayuda!

Al final lo solucioné "a lo burro" pero he podido optimizar la consulta gracias a vuestros comentarios :).

Lo dicho, muchas gracias!!
A que se refiere con "a lo burro" ??

Coloque su query, ya que la que yo le puse lo hace bien.
__________________
Al contrario de lo que muchos podrían afirmar, ayudar no te hace pobre, sino más rico.
  #7 (permalink)  
Antiguo 29/05/2017, 07:45
 
Fecha de Ingreso: agosto-2009
Mensajes: 216
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: Tabla gastos por meses

Pues que en principio no almacenaba los meses en la tabla, solo la fecha del gasto. Añadí un nuevo campo a la tabla llamado mes, y almacenaba el número del mes. De esta manera es muy fácil filtrar.

Un saludo!!

Etiquetas: tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:00.