Foros del Web » Programando para Internet » PHP »

suma de registros

Estas en el tema de suma de registros en el foro de PHP en Foros del Web. Hola a tod@s Tengo una consulta sobre como poder hacer que me calcule la suma total de todos los registros de una base de datos, ...
  #1 (permalink)  
Antiguo 12/12/2005, 10:28
 
Fecha de Ingreso: noviembre-2005
Mensajes: 45
Antigüedad: 18 años, 5 meses
Puntos: 1
Pregunta suma de registros

Hola a tod@s

Tengo una consulta sobre como poder hacer que me calcule la suma total de todos los registros de una base de datos, un ejemplo:

Un abse de datos con los campos id poblacion y numero de habitantes

quiero que me muestre todas las poblaciones con el numero de habitantes y al final me sume todos los habitantes de todas las poblaciones y me saque el resultado.

como puedo hacerlo.

Un saludo y mil gracias.
  #2 (permalink)  
Antiguo 12/12/2005, 10:44
Avatar de Jorgemen  
Fecha de Ingreso: mayo-2005
Ubicación: Perú
Mensajes: 322
Antigüedad: 18 años, 11 meses
Puntos: 1
Hola

Código PHP:
$total=0;

$link=conectarse();
$sql="select * from poblacion";
$respuesta=mysql_query($sql,$link);
while(
$fila=mysql_fetch_array($respuesta))
{
  
$nombrePoblacion $fila['poblacion'];
  
$nroHabitantes $fila['nroHabitantes'];
  echo 
"población: $nombrePoblacion<br>";
  echo 
"nro de Habitantes : $nroHabitantes<br>";
  
$total $total+$nroHabitantes;
}
echo 
"El total de habitantes es : $total<br>"
ESPERO HABERTE AYUDADO.
  #3 (permalink)  
Antiguo 12/12/2005, 11:35
 
Fecha de Ingreso: noviembre-2005
Mensajes: 45
Antigüedad: 18 años, 5 meses
Puntos: 1
gracias pero no me funciona

Hola Jorgemen

Muchisimas gracias por la respuesta, pero no me funiciona, no me repite todas las poblaciones y el resultado siempre es 0

Si se te ocurre algo mas, yo intentaré averiguar algo mas sobre este tema.

Un saludo.
  #4 (permalink)  
Antiguo 12/12/2005, 12:01
Avatar de Jorgemen  
Fecha de Ingreso: mayo-2005
Ubicación: Perú
Mensajes: 322
Antigüedad: 18 años, 11 meses
Puntos: 1
estas seguro que tu campo nroHabitantes es entero es decir int???
  #5 (permalink)  
Antiguo 12/12/2005, 12:04
Avatar de Jorgemen  
Fecha de Ingreso: mayo-2005
Ubicación: Perú
Mensajes: 322
Antigüedad: 18 años, 11 meses
Puntos: 1
dbería funcionar ya lo probe y si funciona
  #6 (permalink)  
Antiguo 12/12/2005, 12:15
 
Fecha de Ingreso: noviembre-2005
Mensajes: 45
Antigüedad: 18 años, 5 meses
Puntos: 1
si es int

si es int pero es mas, he probado de cambiar el campo nroHabitantes por un numero y tampoco hace la suma y si cambio $total=0; por $total=3; el resultado es 3 es como si pasará del resto de variables.

un saludo
  #7 (permalink)  
Antiguo 12/12/2005, 13:32
Avatar de Jorgemen  
Fecha de Ingreso: mayo-2005
Ubicación: Perú
Mensajes: 322
Antigüedad: 18 años, 11 meses
Puntos: 1
lo que está sucediendo es que no está recuperando $nroHabitantes de tu base de datos, el código que te envie está mal lo que puedo ver es que tu base de datos no tiene datos en ese campo, es posible que al insertar no estes insertando, o que el nombre del campo este mal escrito pero creo que es problema de BD
  #8 (permalink)  
Antiguo 12/12/2005, 13:35
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 3 meses
Puntos: 7
Eso puedes hacerlo con SQL usando funciones de agrupación y agregación.

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #9 (permalink)  
Antiguo 12/12/2005, 15:59
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 3 meses
Puntos: 9
Código PHP:
$sql "SELECT suma (cat_habitante) AS total_habitantes FROM tabla_habitantes"
ahora tenes un campo total_habitantes, que tiene la suma de todos :p

aunue deberia funcionar el codigo q te pasaron, este solo te hace la suma :p
  #10 (permalink)  
Antiguo 13/12/2005, 09:15
 
Fecha de Ingreso: noviembre-2005
Mensajes: 45
Antigüedad: 18 años, 5 meses
Puntos: 1
muchas gracias a todos

Gracias a todos por la ayuda.

Jorgemen al final lo he realizado usando SQL.


Muchas gracias.

Un saludo.
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 18:31.