Foros del Web » Programando para Internet » PHP »

Sumar filas segun condicion

Estas en el tema de Sumar filas segun condicion en el foro de PHP en Foros del Web. Saludos tengo un problema con una consulta php en sqlL, más precisamente al sumar determinadas filas según cierto criterio. Mi consulta es la siguiente: Código ...
  #1 (permalink)  
Antiguo 09/11/2011, 11:26
 
Fecha de Ingreso: junio-2011
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
Sumar filas segun condicion

Saludos tengo un problema con una consulta php en sqlL, más precisamente al sumar determinadas filas según cierto criterio.

Mi consulta es la siguiente:


Código HTML:
$sql1="SELECT * FROM facturasp WHERE borrado = '0' AND iva LIKE '%10.5%' and '10.5%' ";
$r=mysql_query($sql1);
#muestra la cantidad de filas
$rcounto=mysql_num_rows($r);

El cual da como resultado:

Código HTML:
Hay 1 Factura (s) con el 21% Total $
Hay 2 Factura (s) con el 10.5% Total $
Hay 0 Factura (s) con el 0% Total $

Ahora lo que necesito es modificar esta consulta para poder dar como resultado la sumatoria de los ivas que tengan tipos en común, o sea, sumar todas las filas que tengan los ivas "0", "10.5", y "21" y que la salida sea:


Código HTML:
Hay 1 Factura (s) con el 21% Total $ 1856
Hay 2 Factura (s) con el 10.5% Total $ 2543
Hay 0 Factura (s) con el 0% Total $0
Alguien me puede ayudar en este script por favor??? muchas gracias
  #2 (permalink)  
Antiguo 09/11/2011, 11:33
(Desactivado)
 
Fecha de Ingreso: julio-2009
Ubicación: España
Mensajes: 38
Antigüedad: 14 años, 9 meses
Puntos: 1
Respuesta: Sumar filas segun condicion

Haz un select con todos los resultados del primer IVA y los sumas con un bucle en php, luego con los del segundo...

Código HTML:
$suma=0;
while ($row = mysql_fetch_row($r))
{
    $suma=$row+$suma;
}
  #3 (permalink)  
Antiguo 09/11/2011, 12:15
 
Fecha de Ingreso: junio-2011
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Sumar filas segun condicion

Hice este arreglo pero me manda este error
Código HTML:
Warning: Cannot use a scalar value as an array in index.php on line 284

Warning: Cannot use a scalar value as an array in index.php on line 284

Warning: Cannot use a scalar value as an array in index.php on line 284

Warning: Invalid argument supplied for foreach() in index.php on line 290

Código PHP:
<?php
    $sql 
mysql_query("SELECT * FROM facturasp WHERE borrado = '0' Order by iva Desc");
    if(
mysql_num_rows($sql))
    {
        while(
$r mysql_fetch_row($sql))
        {
            if(empty(
$iva[$r['iva']]))
            {
                
$iva[$r['iva']] = 1;
            }else{
                
$iva[$r['iva']] += 1;
            }
        }
     
        foreach(
$iva as $k=>$v)
        {
            echo 
"Hay ".$v." Factura(s) con el ".$k."% Total $".$k." <br>";
        }
    }  
    
?>

Etiquetas: filas, sql
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 14:16.