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

[SOLUCIONADO] Consulta MySQL Sumar distintas tablas

Estas en el tema de Consulta MySQL Sumar distintas tablas en el foro de Mysql en Foros del Web. Buenos dias, Les hago la siguiente consulta. Lo que quiero generer es una suma de columnas en distintas tablas. He generado el siguiente código y ...
  #1 (permalink)  
Antiguo 07/03/2014, 06:36
 
Fecha de Ingreso: enero-2013
Mensajes: 64
Antigüedad: 11 años, 10 meses
Puntos: 0
Consulta MySQL Sumar distintas tablas

Buenos dias,

Les hago la siguiente consulta. Lo que quiero generer es una suma de columnas en distintas tablas.

He generado el siguiente código y me funciona
Código MySQL:
Ver original
  1. SELECT START, SUM(Mbps_DL_hpps) AS Suma_total, SUM(Mbps_UL_hpps) AS Sum_total2
  2. SUM(trafico_datos_R99_DL+trafico_datos_HSDPA)*8/3600 AS Mbps_DL_hpps,
  3. SUM(trafico_datos_R99_UL+trafico_datos_HSUPA)*8/3600 AS Mbps_UL_hpps
  4. FROM Estadisticas_UMTS.RAN_UCELL_hpps
  5. WHERE START>=('2014-03-01') GROUP BY START
  6. SUM(DL_PS_R99_Bytes+HSDPA_RLC_Traffic)/1024/1024*8/3600 AS Mbps_DL_hpps,
  7. SUM(UL_PS_R99_Bytes+HSUPA_RLC_Traffic)/1024/1024*8/3600 AS Mbps_UL_hpps
  8. FROM Estadisticas_UMTS.KPI_Trafico_cell_hpps  
  9. WHERE START>=('2014-03-01') GROUP BY START
  10. )

Pero como son varias Tablas las que quiero sumar, he generado el siguiente codigo que no me funciona:
Código MySQL:
Ver original
  1. SELECT START, SUM(Erlangs_voz_hpcs) AS Suma_total, SUM(Mbps_DL_hpps) AS Suma_total, SUM(Mbps_UL_hpps) AS Sum_total2
  2. SELECT START, SUM(trafico_voz) AS Erlangs_voz_hpcs
  3. FROM Estadisticas_UMTS.RAN_UCELL_hpcs
  4. WHERE START>=('2014-03-01') GROUP BY START
  5. SELECT START, SUM(AMR_Traffic) AS Erlangs_voz_hpcs
  6. FROM Estadisticas_UMTS.KPI_Trafico_cell_hpcs
  7. WHERE START>=('2014-03-01') GROUP BY START
  8. SUM(trafico_datos_R99_DL+trafico_datos_HSDPA)*8/3600 AS Mbps_DL_hpps,
  9. SUM(trafico_datos_R99_UL+trafico_datos_HSUPA)*8/3600 AS Mbps_UL_hpps
  10. FROM Estadisticas_UMTS.RAN_UCELL_hpps
  11. WHERE START>=('2014-03-01') GROUP BY START
  12. SUM(DL_PS_R99_Bytes+HSDPA_RLC_Traffic)/1024/1024*8/3600 AS Mbps_DL_hpps,
  13. SUM(UL_PS_R99_Bytes+HSUPA_RLC_Traffic)/1024/1024*8/3600 AS Mbps_UL_hpps
  14. FROM Estadisticas_UMTS.KPI_Trafico_cell_hpps  
  15. WHERE START>=('2014-03-01') GROUP BY START
  16. )

La consulta es cual es mi error en la segunda consulta que no devuelve resultados.

Muchas gracias. Saludos.

Última edición por gnzsoloyo; 07/03/2014 a las 07:18
  #2 (permalink)  
Antiguo 07/03/2014, 07:09
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Consulta MySQL Sumar distintas tablas

Código MySQL:
Ver original
  1. SELECT Sbc.`START`,
  2.        SUM(Sbc.Erlangs_voz_hpcs) AS Suma_total,
  3.        SUM(Sbc.Mbps_DL_hpps) AS Suma_total,
  4.        SUM(Sbc.Mbps_UL_hpps) AS Sum_total2
  5. FROM (SELECT `START`,
  6.             SUM(trafico_voz) AS Erlangs_voz_hpcs,
  7.             0 AS Mbps_DL_hpps,
  8.             0 AS Mbps_UL_hpps
  9.      FROM Estadisticas_UMTS.RAN_UCELL_hpcs
  10.      WHERE `START`>=('2014-03-01')
  11.      GROUP BY `START`
  12.      UNION
  13.      SELECT `START`,
  14.             SUM(AMR_Traffic) AS Erlangs_voz_hpcs,
  15.             0 AS Mbps_DL_hpps,
  16.             0 AS Mbps_UL_hpps
  17.      FROM Estadisticas_UMTS.KPI_Trafico_cell_hpcs
  18.      WHERE `START`>=('2014-03-01')
  19.      GROUP BY `START`
  20.      UNION
  21.      SELECT `START`,
  22.             0 AS Erlangs_voz_hpcs,
  23.             SUM(trafico_datos_R99_DL+trafico_datos_HSDPA)*8/3600 AS Mbps_DL_hpps,
  24.             SUM(trafico_datos_R99_UL+trafico_datos_HSUPA)*8/3600 AS Mbps_UL_hpps
  25.      FROM Estadisticas_UMTS.RAN_UCELL_hpps
  26.      WHERE `START`>=('2014-03-01')
  27.      GROUP BY `START`
  28.      UNION
  29.      SELECT `START`,
  30.             0 AS Erlangs_voz_hpcs,
  31.             SUM(DL_PS_R99_Bytes+HSDPA_RLC_Traffic)/1024/1024*8/3600 AS Mbps_DL_hpps,
  32.             SUM(UL_PS_R99_Bytes+HSUPA_RLC_Traffic)/1024/1024*8/3600 AS Mbps_UL_hpps
  33.      FROM Estadisticas_UMTS.KPI_Trafico_cell_hpps  
  34.      WHERE `START`>=('2014-03-01')
  35.      GROUP BY `START`) Sbc
  36. GROUP BY Sbc.`START`

Las subquery que integran una query de union deben tener los mismos campos... por eso los añado con valor fijo cero (0).

start es una palabra reservada o casi.... inicia el servidor!!!! Usa `start` o cambia el nombre del campo.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: distintas, select, tabla, 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 21:40.