Foros del Web » Programando para Internet » PHP »

Sumar registros de la misma tabla sql

Estas en el tema de Sumar registros de la misma tabla sql en el foro de PHP en Foros del Web. Buenas, Código PHP: echo  "<table class='tabla'> \n" ; echo  "<tr> \n" ; echo  "<td class='tit'><b>Jefatura de operaciones</b></td> \n" ; echo  "<td class='tit'><b>Extintores</b></td> \n" ; echo  "</tr> \n" ; $result  =  mysql_query ( "SELECT DISTINCT jefatura FROM ext" ,  $link ...
  #1 (permalink)  
Antiguo 27/09/2010, 14:43
 
Fecha de Ingreso: septiembre-2010
Mensajes: 92
Antigüedad: 13 años, 7 meses
Puntos: 1
Pregunta Sumar registros de la misma tabla sql

Buenas,

Código PHP:
echo "<table class='tabla'> \n";
echo 
"<tr> \n";
echo 
"<td class='tit'><b>Jefatura de operaciones</b></td> \n";
echo 
"<td class='tit'><b>Extintores</b></td> \n";

echo 
"</tr> \n";


$result mysql_query("SELECT DISTINCT jefatura FROM ext"$link);

if (
$row mysql_fetch_array($result)){
while (
$row mysql_fetch_row($result)){
echo 
"<tr> \n";
echo 
"<td class='borde'>$row[0]</td> \n";
echo 
"<td class='borde'>$row[1]</td> \n";

echo 
"</tr> \n";

}

Necesito sumar el numero total de registros que tienen cada "jefatura". Es decir necsito que , por ejemplo para Jefatura A me aparezca en la celda contigua todos los registros que son de esa jefatura, osea el total. Todos los datos estan en una misma tabla. con algo asi...

$consulta=mysql_query("SELECT * FROM ext WHERE jefatura='elvalordelacelda anterior que sería cada jefatura'",$conexion);
$numero_filas=mysql_num_rows($consulta);
echo $numero_filas;



Muchas gracias
  #2 (permalink)  
Antiguo 27/09/2010, 14:55
 
Fecha de Ingreso: febrero-2010
Mensajes: 818
Antigüedad: 14 años, 2 meses
Puntos: 55
Respuesta: Sumar registros de la misma tabla sql

puedes usar COUNT() http://dev.mysql.com/doc/refman/5.0/...ting-rows.html
  #3 (permalink)  
Antiguo 27/09/2010, 15:42
 
Fecha de Ingreso: septiembre-2010
Mensajes: 92
Antigüedad: 13 años, 7 meses
Puntos: 1
Pregunta Respuesta: Sumar registros de la misma tabla sql

Cita:
Iniciado por Death_Empire Ver Mensaje
puedes usar COUNT() [url]http://dev.mysql.com/doc/refman/5.0/es/counting-rows.html[/url]
Ok, pero como hago para que coincida la suma con cada una de las jefaturas...
es decir...

Jefatura A-------->2
Jefatura B--------->3


SELECT jefatura, COUNT(*) FROM ext WHERE jefatura='$row[0]' GROUP BY jefatura;


Necesitaría meter algo así en cada una de las rows...


Código PHP:
<td><b>Jefatura</b></td><td><b>extintores</b></td>
</
tr>";
while($row=mysql_fetch_row($result)){
  echo"
<tr>
    <
td>$row[1]</td><td>//Aqui el numero de extintores</td></tr>";
}
echo
"</table>";


GRACIAS 
  #4 (permalink)  
Antiguo 27/09/2010, 16:32
 
Fecha de Ingreso: septiembre-2010
Mensajes: 92
Antigüedad: 13 años, 7 meses
Puntos: 1
Pregunta Respuesta: Sumar registros de la misma tabla sql

Además de hacer el count segun la jefatura, intento hacer un DISTINC y no....


Código PHP:
$result=mysql_query("SELECT 
    jefatura, timbre
FROM
   ext
WHERE
   jefatura IN (
    SELECT DISTINCT jefatura
   FROM ext)"
,$link);

$suma=mysql_query("SELECT jefatura, COUNT(*) FROM ext WHERE jefatura='$row[1]' GROUP BY jefatura",$link);
$numero_filas=mysql_num_rows($suma);

echo
"<table width=600>
<tr>
<td><b>Jefatura</b></td><td><b>Extintores</b></td></tr>"
;
while(
$row=mysql_fetch_row($result)){
  echo
"<tr>
    <td>$row[1]</td><td>$numero_filas</td>
    </tr>"
;
}
echo
"</table>"

Como suma me da 0....


Gracias
  #5 (permalink)  
Antiguo 27/09/2010, 16:41
 
Fecha de Ingreso: septiembre-2010
Mensajes: 92
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: Sumar registros de la misma tabla sql

Por partes... el distinc... no me muestra los resultados en pantalla....
me da este error

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/pruebasa/public_html/jegatura.php on line 14


Código PHP:
$result=mysql_query("SELECT id, jefatura FROM (SELECT DISTINCT jefatura FROM ext)"$link);

echo
"<table width=600>
<tr>
<td><b>Jefatura</b></td><td><b>Extintores</b></td></tr>"
;
while(
$row=mysql_fetch_row($result)){
  echo
"<tr>
    <td>$row[1]</td><td>$row[2]</td>
    </tr>"
;
}
echo
"</table>"
Lo siento, pero es que soy bastante novata en esto. Gracias :D

Última edición por ommm; 27/09/2010 a las 16:48
  #6 (permalink)  
Antiguo 27/09/2010, 17:02
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Sumar registros de la misma tabla sql

No he entendido muy bien... Pero si sólo deseas sumar los registros de una tabla agrupados por los distintos tipos de jefaturas... ¿No lo resolverías usando unicamente una consulta?

Código PHP:
$consulta mysql_query("SELECT SUM(jefatura) as jefaturas FROM ext GROUP BY jefatura");

$cont=1;
while(
$result=mysql_fetch_assoc($consulta))
{   
    echo 
"Jefatura ".$cont++.": ".$result['jefaturas'];
        

Si no era eso y te he entendido mal mis disculpas
  #7 (permalink)  
Antiguo 27/09/2010, 17:12
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Sumar registros de la misma tabla sql

Cita:
Iniciado por ommm Ver Mensaje
Por partes... el distinc... no me muestra los resultados en pantalla....
me da este error

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/pruebasa/public_html/jegatura.php on line 14


Código PHP:
$result=mysql_query("SELECT id, jefatura FROM (SELECT DISTINCT jefatura FROM ext)"$link);

echo
"<table width=600>
<tr>
<td><b>Jefatura</b></td><td><b>Extintores</b></td></tr>"
;
while(
$row=mysql_fetch_row($result)){
  echo
"<tr>
    <td>$row[1]</td><td>$row[2]</td>
    </tr>"
;
}
echo
"</table>"
Lo siento, pero es que soy bastante novata en esto. Gracias :D
depura tu consulta para que te indique el error especifico de mysql ej
Código PHP:
Ver original
  1. $result=mysql_query("SELECT id, jefatura FROM (SELECT DISTINCT jefatura FROM ext)", $link) or die (mysql_error());
y creo que la solucion que te da el amigo IEKK es mas viable sino entendi mal yo tambien ya que no tiens que hacer dos consultas saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #8 (permalink)  
Antiguo 28/09/2010, 01:47
 
Fecha de Ingreso: septiembre-2010
Mensajes: 92
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: Sumar registros de la misma tabla sql

Cita:
Iniciado por IEKK Ver Mensaje
No he entendido muy bien... Pero si sólo deseas sumar los registros de una tabla agrupados por los distintos tipos de jefaturas... ¿No lo resolverías usando unicamente una consulta?

Código PHP:
$consulta mysql_query("SELECT SUM(jefatura) as jefaturas FROM ext GROUP BY jefatura");

$cont=1;
while(
$result=mysql_fetch_assoc($consulta))
{   
    echo 
"Jefatura ".$cont++.": ".$result['jefaturas'];
        

No entiendo....
es que lo que necesito es que por un lado me muestre las jefaturas pero SIN REPETICIÓN porque habrá más de un registro para cada jefatura... Y luego que a la derecha me diga cuantos registros hay de esa jefatura.

Gracias :)

Si no era eso y te he entendido mal mis disculpas
  #9 (permalink)  
Antiguo 28/09/2010, 01:57
 
Fecha de Ingreso: septiembre-2010
Mensajes: 92
Antigüedad: 13 años, 7 meses
Puntos: 1
Pregunta Respuesta: Sumar registros de la misma tabla sql

Cita:
Iniciado por IEKK Ver Mensaje
No he entendido muy bien... Pero si sólo deseas sumar los registros de una tabla agrupados por los distintos tipos de jefaturas... ¿No lo resolverías usando unicamente una consulta?

Código PHP:
$consulta mysql_query("SELECT SUM(jefatura) as jefaturas FROM ext GROUP BY jefatura");

$cont=1;
while(
$result=mysql_fetch_assoc($consulta))
{   
    echo 
"Jefatura ".$cont++.": ".$result['jefaturas'];
        

No quiero que me sume el valor, quiero que me diga la cantidad de registros, pero previavente habiendo mostrado registros diferetentes... que no haya dos jefaturas iguales. Muchas gracias :)
  #10 (permalink)  
Antiguo 28/09/2010, 02:11
 
Fecha de Ingreso: septiembre-2010
Mensajes: 92
Antigüedad: 13 años, 7 meses
Puntos: 1
Pregunta Respuesta: Sumar registros de la misma tabla sql

el error que me da es....

Every derived table must have its own alias

gracias

Etiquetas: registros, sql, sumar
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 17:57.