Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Consulta SQL

Estas en el tema de Consulta SQL en el foro de Mysql en Foros del Web. Hola a todos, tengo una tabla q tiene los campos: id: INT fecha: DATETIME tipo: ENUM('f','b','o') cantidad: FLOAT y lo q quiero es sacar a ...
  #1 (permalink)  
Antiguo 08/04/2011, 02:22
 
Fecha de Ingreso: julio-2006
Mensajes: 8
Antigüedad: 17 años, 8 meses
Puntos: 0
Consulta SQL

Hola a todos, tengo una tabla q tiene los campos:
id: INT
fecha: DATETIME
tipo: ENUM('f','b','o')
cantidad: FLOAT

y lo q quiero es sacar a traves de una consulta lo siguiente:
hacer una sumatoria de las cantidades por cada mes, pero deben hacer dos sumatorias, una con los registros q son de tipo 'f' o 'b' y otra sumatoria con todos los registros, he logrado hacer una sumatoria de todos los registros por mes y por año con la siguiente consulta:

SELECT Year(gasto.fingreso) as `año`, Month(gasto.fingreso) as `Mes`, SUM(gasto.total) as `Suma de Totales`FROM gasto group by Year(gasto.fingreso), Month(gasto.fingreso)

Pero quiero q me bote 2 sumatorias, no solo una, falta la suma de las cantidades pero solo con los registros de tipo 'f' o 'b', pero tiene q ser en una sola consulta, les agradezco de antemano la respuesta.
  #2 (permalink)  
Antiguo 08/04/2011, 02:48
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Consulta SQL

Código MySQL:
Ver original
  1. SELECT Year(gasto.fingreso) as `anio`,
  2. Month(gasto.fingreso) as `Mes`,
  3. SUM(if(gasto.tipo='f' OR gasto.tipo='b',gasto.total,0)) as `Suma de f y b`,
  4. SUM(gasto.total) as `Suma de Totales`
  5. FROM gasto
  6. group by Year(gasto.fingreso), Month(gasto.fingreso)

Si?
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: sql
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 02:58.