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

¿Como puedo saber que elementos sume usando SUM?

Estas en el tema de ¿Como puedo saber que elementos sume usando SUM? en el foro de Mysql en Foros del Web. Amigos, reciban un cordial saludo, en esta oportunidad les escribo porque tengo un pequeño problema, el cual consiste en lo siguiente: Tengo una tabla, que ...
  #1 (permalink)  
Antiguo 25/04/2010, 12:05
 
Fecha de Ingreso: octubre-2007
Mensajes: 6
Antigüedad: 16 años, 6 meses
Puntos: 0
De acuerdo ¿Como puedo saber que elementos sume usando SUM?

Amigos, reciban un cordial saludo, en esta oportunidad les escribo porque tengo un pequeño problema, el cual consiste en lo siguiente:

Tengo una tabla, que es la siguiente:

Id Nombre Edad Bs
1 Ana 11 15
2 Maria 12 20
3 Pedro 10 50
4 Rosa 12 10

Yo quiero hacer un query, que me indique:

¿La suma de los Bs de las personas que tienen mayor o igual a 12 años de edad y cuales fueron los Id que cumplen con esa solicitud?

El query debe ser algo como:

Select sum(Bs) from tabla where Edad>=12

Pero como se yo cuales son los id de esas personas si la función SUM no me los indica.

Cualquier solucion es valida, function, vistas, etc...

Agradecido por sus opiniones!!!
  #2 (permalink)  
Antiguo 25/04/2010, 12:25
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: ¿Como puedo saber que elementos sume usando SUM?

Bueno esto a mi me resultó
Código MySQL:
Ver original
  1. SELECT id, SUM(Edad) sumEdad FROM tabla WHERE Edad >= 12 GROUP BY id WITH ROLLUP;
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 25/04/2010, 13:33
 
Fecha de Ingreso: octubre-2007
Mensajes: 6
Antigüedad: 16 años, 6 meses
Puntos: 0
Busqueda Respuesta: ¿Como puedo saber que elementos sume usando SUM?

Gracias por responder, pero no me funciono, me muestra solo un valor.. cuando quiero conocer todos los valores que se utilizaron para sumar, el ejemplo es una tabla pequeña, pero lo que quiero esta en una tabla grande de 4mil registro donde los elementos se repite de 1 a n, y necesitos el detalle de esos n que logre sumar y agrupar.

Segun la lectura que he venido realizando, me indica que debe ser a través de un procedimiento, aun no he logrado solventar...

Saludos!!
  #4 (permalink)  
Antiguo 25/04/2010, 13:38
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: ¿Como puedo saber que elementos sume usando SUM?

Pero ¿cómo lo hiciste? Porque yo ingrese los valores que indicaste hice exactamente ese proceso y me trajo los dos valores de 12 más al final el total.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 25/04/2010, 13:49
 
Fecha de Ingreso: octubre-2007
Mensajes: 6
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: ¿Como puedo saber que elementos sume usando SUM?

De mi consulta original y de la siguiente tabla:

Id Nombre Edad Bs
1 Ana 11 15
2 Maria 12 20
3 Pedro 10 50
4 Rosa 12 10

Yo quiero como salida la siguiente informacion

Sum(Bs) Id
30 2,4

que debe venir de un query similar a:

Select sum(Bs),id from tabla where Edad>=12 (esta mal hecho)

Aun no he conseguido respuesta, estoy investigando.

Lo que me enviastes lo necesito para conocer los totales, gracias.
  #6 (permalink)  
Antiguo 25/04/2010, 14:21
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: ¿Como puedo saber que elementos sume usando SUM?

Prueba esto:
SELECT SUM(Edad) sumEdad, GROUP_CONCAT(CAST(id AS CHAR)) ids FROM tabla WHERE Edad >= 12

Etiquetas: elementos, sum
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 03:11.