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

select Sum(algo) from... VS sumar con un bucle

Estas en el tema de select Sum(algo) from... VS sumar con un bucle en el foro de Mysql en Foros del Web. Saludos, tengo una curiosidad, estoy optimizando muchas consultas de un sistema que tengo y me asalto la siguiente duda Hago una consulta a una tabla ...
  #1 (permalink)  
Antiguo 12/02/2011, 12:22
 
Fecha de Ingreso: diciembre-2009
Mensajes: 56
Antigüedad: 14 años, 4 meses
Puntos: 0
select Sum(algo) from... VS sumar con un bucle

Saludos,
tengo una curiosidad, estoy optimizando muchas consultas de un sistema que tengo
y me asalto la siguiente duda

Hago una consulta a una tabla X y le asigno un cursor
$cursor = mysql_query("select *from tabla where......")
$cursor = array()

En esta tabla tambien tengo un campo donde se almacena pagos

Deseo hacer la sumatoria total de ese array, obviamente no lo puedo agrupar porque necesito extraer datos individualmente con un foreach
yo quería saber que es mas rapido o en todo caso donde tengo mejor rendimiento si...:

1 ¿ hago una nueva consulta y aplico :

$sumatoria = mysql_query(" select sum(algo) from .... where

2. O con el foreach utilizando php encuentro la sumatoria

Gracias por el trabajo de leer espero se entienda
  #2 (permalink)  
Antiguo 12/02/2011, 17:10
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: select Sum(algo) from... VS sumar con un bucle

- Hacer una consulta con una función agregada como SUM() hace que la suma se realice en la medida que se leen los registros y el dato sale ya consolidado (agrupado según se pida o no).
- Hacerla en la aplicación requiere transferir un montón de data inútil a la aplicación, mucha de la cual no será usada.
- Usar "*" para que te devuelva todos los campos sólo tiene sentido si vas a usarlos a todos los campos de cada registro. Caso contrario es leer información inútil que se paga con performance de la aplicación, la conexión y recursos de la base.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 15/02/2011, 16:46
 
Fecha de Ingreso: diciembre-2009
Mensajes: 56
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: select Sum(algo) from... VS sumar con un bucle

Cita:
Iniciado por gnzsoloyo Ver Mensaje
- Hacer una consulta con una función agregada como SUM() hace que la suma se realice en la medida que se leen los registros y el dato sale ya consolidado (agrupado según se pida o no).
- Hacerla en la aplicación requiere transferir un montón de data inútil a la aplicación, mucha de la cual no será usada.
- Usar "*" para que te devuelva todos los campos sólo tiene sentido si vas a usarlos a todos los campos de cada registro. Caso contrario es leer información inútil que se paga con performance de la aplicación, la conexión y recursos de la base.
Vale la aclaracion, lo del "*" lo puse solo de ejemplo, gracias por la respuesta me es de utilidad

Etiquetas: bucle, select
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:38.