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

Suma categorias sin repetir y por mes

Estas en el tema de Suma categorias sin repetir y por mes en el foro de Mysql en Foros del Web. Hola tengo 2 tablas: ****tabla1***** id_categorias |categorias --------------------------- 10 |alimentacion 11 |coche 12 |colegio 13 |internet ****tabla2**** id |id_categorias |gastos | Fecha ---------------------------------------- 1 | ...
  #1 (permalink)  
Antiguo 09/07/2009, 15:23
 
Fecha de Ingreso: enero-2007
Mensajes: 156
Antigüedad: 17 años, 10 meses
Puntos: 3
Suma categorias sin repetir y por mes

Hola tengo 2 tablas:

****tabla1*****

id_categorias |categorias
---------------------------
10 |alimentacion
11 |coche
12 |colegio
13 |internet



****tabla2****
id |id_categorias |gastos | Fecha
----------------------------------------
1 | 10 |100 | 2009-07-01
2 | 11 |40 |2009-07-15
3 | 10 |80 |2009-07-05
4 | 13 |30 |2009-06-03
5 | 10 |10 |2009-07-10
7 | 13 |30 |2009-06-06



Me gustaría obtener la suma de cada categoria, pero sin que se repitan, y si esta vacia no salga,además solo debe salir el mes que yo elija, es decir, quedaría así con el ejemplo anterior y en Julio de 2009:

alimentacion= 190
coche= 40

Muy amables de ayudarme
  #2 (permalink)  
Antiguo 09/07/2009, 15:29
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Suma categorias sin repetir y por mes

Prueba esto:

Código sql:
Ver original
  1. SELECT categorias,SUM(gastos) FROM tabla1 INNER JOIN tabla2
  2. USING(id_categorias) WHERE date_format(fecha,'%Y-%m') = '2009-07'
  3. GROUP BY categorias;

No la he probado.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 09/07/2009, 15:30
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 7 meses
Puntos: 300
Respuesta: Suma categorias sin repetir y por mes

Código sql:
Ver original
  1. SELECT t1.categorias, SUM(t2.gastos) gasto FROM tabla1 t1 INNER JOIN tabla2 t2
  2.  USING (id_categorias) WHERE (YEAR(t2.fecha) = 2009 AND MONTH(t2.fecha) = 7)
  3. GROUP BY t2.id_categorias

No lo he probado.

Edito para corregir y usar el USING como huestos52
  #4 (permalink)  
Antiguo 09/07/2009, 15:53
 
Fecha de Ingreso: enero-2007
Mensajes: 156
Antigüedad: 17 años, 10 meses
Puntos: 3
Respuesta: Suma categorias sin repetir y por mes

Muchisimas gracias Jurena

funciona perfectamente!!! que amables que sois
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 14:03.