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

Sumar una fila

Estas en el tema de Sumar una fila en el foro de Mysql en Foros del Web. Hola, alguien conoce un metodo para sumar determinados campos de una misma fila con una consulta mysql o eso solo es posible con columnas? Gracias...
  #1 (permalink)  
Antiguo 27/09/2006, 06:38
 
Fecha de Ingreso: septiembre-2006
Mensajes: 12
Antigüedad: 18 años, 2 meses
Puntos: 0
Sumar una fila

Hola, alguien conoce un metodo para sumar determinados campos de una misma fila con una consulta mysql o eso solo es posible con columnas?
Gracias
  #2 (permalink)  
Antiguo 27/09/2006, 06:41
 
Fecha de Ingreso: septiembre-2006
Mensajes: 12
Antigüedad: 18 años, 2 meses
Puntos: 0
Perdon, no queria decir sumar sino hacer la media de las columnas
  #3 (permalink)  
Antiguo 27/09/2006, 07:51
Avatar de Lord of freaks  
Fecha de Ingreso: octubre-2004
Ubicación: Madrid
Mensajes: 334
Antigüedad: 20 años, 1 mes
Puntos: 2
Select avg(campo) as media from TABLA
__________________
Una vez un elemental de rayos mató una tribu entera de tritones.

¡¡ El sólo quería darse un baño !!

http://www.frikilandia.com

Neither Fu Nor Fa
  #4 (permalink)  
Antiguo 27/09/2006, 07:59
 
Fecha de Ingreso: septiembre-2006
Mensajes: 12
Antigüedad: 18 años, 2 meses
Puntos: 0
Gracias, pero en realidad lo que yo quiero es hacer la media de una fila, es decir coger todas las columnas de esta fila, sumarlas y dividir entre el numero de columnas. El avg hace eso para las filas de una misma columna pero no al reves.

Última edición por Jotas; 27/09/2006 a las 08:39
  #5 (permalink)  
Antiguo 27/09/2006, 08:30
Avatar de PequeñoMauro  
Fecha de Ingreso: abril-2006
Ubicación: Lima - Perú
Mensajes: 600
Antigüedad: 18 años, 7 meses
Puntos: 3
Bueno, ya haz dado con la respuesta...
select (campo1+campo2+campo3+..campo n)/n
from tabla;
De hecho que los datos deben ser tipo numérico...
__________________
"Nada en mis manos traigo tan solo a tu cruz me aferro....."
  #6 (permalink)  
Antiguo 27/09/2006, 08:38
 
Fecha de Ingreso: septiembre-2006
Mensajes: 12
Antigüedad: 18 años, 2 meses
Puntos: 0
Cita:
Iniciado por PequeñoMauro Ver Mensaje
Bueno, ya haz dado con la respuesta...
select (campo1+campo2+campo3+..campo n)/n
from tabla;
Pues nada, me quedo con ese metodo rudimentario, aunque esperaba encontrar algo mas practico, parecido al avg...
Mas que nada porque mi intencion es ir añadiendo columnas con el tiempo y querria que entrasen dentro de la media sin tener que modificar el select.
Gracias de todas formas
  #7 (permalink)  
Antiguo 27/09/2006, 09:07
Avatar de Lord of freaks  
Fecha de Ingreso: octubre-2004
Ubicación: Madrid
Mensajes: 334
Antigüedad: 20 años, 1 mes
Puntos: 2
Si lo vas a hacer con php no hay problema para hacerlo dinámico pero desde sql ....

en php se me ocurre algo así

Código PHP:

$resultado 
mysql_query($query);

while(
$fila mysql_fetch_assoc($resultado))
{

// la suma de las columnas/registros vengan las que vengan
$suma array_sum($fila);

// el total de columnas/registros
$total count($fila);

// La media
$media $suma/$total;


Espero que te sirva un saludo
__________________
Una vez un elemental de rayos mató una tribu entera de tritones.

¡¡ El sólo quería darse un baño !!

http://www.frikilandia.com

Neither Fu Nor Fa

Última edición por Lord of freaks; 27/09/2006 a las 09:17
  #8 (permalink)  
Antiguo 28/09/2006, 05:35
 
Fecha de Ingreso: septiembre-2006
Mensajes: 12
Antigüedad: 18 años, 2 meses
Puntos: 0
Muchas gracias, probare a ver que tal.
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 22:14.