Foros del Web » Programando para Internet » PHP »

Sumar resultados de LEFT JOIN en misma consulta

Estas en el tema de Sumar resultados de LEFT JOIN en misma consulta en el foro de PHP en Foros del Web. Hola de nuevo chicos, me gustaria hacerles una pregunta medio rara XD Veran, tengo una consulta algo asi: Código PHP: $sql = "SELECT q.quantity AS qquantity, p.price AS pprice, (q.quantity * p.price) AS result FROM quotes AS q LEFT JOIN products AS p ON p.part = q.part" ...
  #1 (permalink)  
Antiguo 13/01/2010, 11:39
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 3 meses
Puntos: 25
Sumar resultados de LEFT JOIN en misma consulta

Hola de nuevo chicos, me gustaria hacerles una pregunta medio rara XD

Veran, tengo una consulta algo asi:

Código PHP:
$sql="SELECT q.quantity AS qquantity, p.price AS pprice, (q.quantity * p.price) AS result
FROM quotes AS q
LEFT JOIN products AS p ON p.part = q.part"

Ok, esto regresa un resultado de varios valores almacenados en una BDD y luego multiplicados, algo asi:

|------------------------------ |
|Cantidad | Valor | Total |
|------------------------------ |
| 5 | 5 | 25 |
|-------------------------------|
| 6 | 7 | 42 |
|-------------------------------|
| 9 | 9 | 81 |
--------------------------------|
|Totales ??? |
--------------------

Bueno, el valor de Total esta almacenado en 'result' de la consulta a MySQL

Mi pregunta es, que podria utilizar para sumar todos los resultados y regresarlos donde estan los ??? en la tabla de arribita, tenia pensado usar algo como

Código PHP:
"SUM(result) AS totales" 
Y regresarlo con un
Código PHP:
'.$row['totales'].' 
Pero no se bien como implementarlo, podrian por favor, de nuevo, ayudarme chicos?

Desde ya, mil gracias !!!
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #2 (permalink)  
Antiguo 13/01/2010, 12:33
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años
Puntos: 7
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

haber si entendi seria algo sum ( (5 + 5 + 25) * precio ) total?

si es asi ponelo literalemte como yo lo puse
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:
  #3 (permalink)  
Antiguo 13/01/2010, 12:53
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 3 meses
Puntos: 25
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

Nup, es asi:

|--------------|
|C | V | T |
|-------------|
| 5 | 5 | 25 |
|-------------|
| 6 | 7 | 42 |
|-------------|
| 9 | 9 | 81 |
--------------|
|Totales ??? |
--------------------

Seria algo asi:

5 x 5 = 25
6 x 7 = 42
9 x 9 = 81

Totales es el valor de = 25+42+81

O sease que Totales seria = 148

El valor de 148 es lo ke me gustaria imprimir, pero no se bien como hacerlo
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #4 (permalink)  
Antiguo 13/01/2010, 12:57
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años
Puntos: 7
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

pero si lo tienes


sum( C * V ) as Total
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:
  #5 (permalink)  
Antiguo 13/01/2010, 13:11
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

se supone que vas a hacer un recorrido de los registros extraídos, algo como:
Código PHP:
$sumador=0;
$sql "SELECT q.quantity AS qquantity, p.price AS ..........";
$rs mysql_query($sql);
while(
$registro mysql_fetch_array($rs)){
    
//las sentencias que desees...
    
$sumador+=$registro['totales'];
}
echo 
"Totales = ".$sumador
Crees que te puedas servir?????...espero q sí
  #6 (permalink)  
Antiguo 13/01/2010, 13:25
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años
Puntos: 7
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

solo haces un

while($registro = mysql_fetch_array($rs)){
//las sentencias que desees...
$total=$registro['totales'];
}
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:
  #7 (permalink)  
Antiguo 13/01/2010, 13:49
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 3 meses
Puntos: 25
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

Cita:
Iniciado por JoseTejada Ver Mensaje
se supone que vas a hacer un recorrido de los registros extraídos, algo como:
Código PHP:
$sumador=0;
$sql "SELECT q.quantity AS qquantity, p.price AS ..........";
$rs mysql_query($sql);
while(
$registro mysql_fetch_array($rs)){
    
//las sentencias que desees...
    
$sumador+=$registro['totales'];
}
echo 
"Totales = ".$sumador
Crees que te puedas servir?????...espero q sí
Y de donde llamaria a
Código PHP:
$registro['totales']; 
como lo kolokaria en la sentencia de MySQL disculpa?
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #8 (permalink)  
Antiguo 13/01/2010, 13:53
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años
Puntos: 7
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

$sql="SELECT q.quantity AS qquantity, p.price AS pprice, SUM(q.quantity * p.price) AS result
FROM quotes AS q
LEFT JOIN products AS p ON p.part = q.pa order by result desc limit 0,1
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:
  #9 (permalink)  
Antiguo 13/01/2010, 14:11
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

$sql="SELECT q.quantity AS qquantity, p.price AS pprice, (q.quantity * p.price) AS totales
FROM quotes AS q
LEFT JOIN products AS p ON p.part = q.part";

totales es un alias del producto del precio y cantidad en cada registro, luego eso vas a ir sumándolos en la variable $sumador, puse totales como ejemplo nomás, pero puedes usar el alias que desees, en tu caso usaste result, entonces sería:

Código PHP:
$sumador=0;
$sql "SELECT q.quantity AS qquantity, p.price AS ..........";
$rs mysql_query($sql);
while(
$registro mysql_fetch_array($rs)){
    
//las sentencias que desees...
    
$sumador+=$registro['result'];
}
echo 
"Totales = ".$sumador
  #10 (permalink)  
Antiguo 13/01/2010, 14:29
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 3 meses
Puntos: 25
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

Oki, ya ahora si ya entendi la mecanica, mil gracias chicos por su ayuda ^o^
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #11 (permalink)  
Antiguo 13/01/2010, 14:36
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

Para eso estamos Jessica :D ... pero avisa si te funciona para que la satisfacción sea mayor :P
  #12 (permalink)  
Antiguo 13/01/2010, 14:37
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 3 meses
Puntos: 25
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

Cita:
Iniciado por JoseTejada Ver Mensaje
Para eso estamos Jessica :D ... pero avisa si te funciona para que la satisfacción sea mayor :P
Sip, si me funciono perfectamente bien, pense ke era mas complicado XD

Mil gracias de nuevo !!!
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #13 (permalink)  
Antiguo 13/01/2010, 14:58
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: Sumar resultados de LEFT JOIN en misma consulta

Q bueno, hasta la prox. Bye

Etiquetas: join, left, resultados
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 06:29.