Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 33
  1. #1
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766

    Come strutturare una query per calcolare il guadagno di un giorno?

    Ho un programma di gestione e vorrei che da ogni id mi calcoli tutti gli incassi nostri dividendoli per giorno.
    Tipo

    25/05/2006 - 50.00 euro
    24/05/2006 - 20.00 euro
    23/05/2006 - 32.00 euro

    ecc
    Come posso strutturarla?
    In ogni id c'e' un campo guadagno_nostro

  2. #2
    fai la somma con SUM e ragruppi con GROUP BY

  3. #3
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    Originariamente inviato da ellecubo
    fai la somma con SUM e ragruppi con GROUP BY
    si la somma posso ricavarla tranquillamente, ma dopo by cosa ci metto?
    la data?

  4. #4
    Originariamente inviato da Tr|k`Tr4k
    si la somma posso ricavarla tranquillamente, ma dopo by cosa ci metto?
    la data?
    già
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #5
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    mi sto perdendo...

    Codice PHP:
    <?
    include("config.php"); 
    $query=mysql_query("select * FROM tabella group by data");

    $incasso = array($incasso);
    echo 
    "($data) = " array_sum($incasso) . "\n";

    ?>
    dove sbaglio?

    la variabile $incasso è quella che in ogni id mi dice quanto ho incassato

  6. #6
    Originariamente inviato da Tr|k`Tr4k
    mi sto perdendo...
    più che altro hai perso un SUM per strada ...



    SELECT SUM(entrate) FROM tabella GROUP BY data
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #7
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    Originariamente inviato da andr3a
    più che altro hai perso un SUM per strada ...



    SELECT SUM(entrate) FROM tabella GROUP BY data
    si infatti...

    ma lo stesso non mi funziona

    Codice PHP:
    <?
    include("config.php"); 
    $query=mysql_query("select id, data, SUM(incasso) FROM tabella where id = \"$id\" group by data");

    $id = ($id);
    $data $riga['data'];
    $incasso = array($incasso);
    echo 
    "$data = " array_sum($incasso) . "\n";

    ?>

  8. #8
    where id = \"$id\"

    se selezioni solo un record il SUM è del singolo dato ed il GROUP BY della singola "data"




    SELECT data, SUM(incasso) FROM tabella GROUP BY data


    l' id non serve, se devi prendere una somma di records, non ce n'è uno che contiene quel valore, devi prendere tutti quelli che contengono quella data ... che è quello che hai chiesto, gorse hai altre esigenze ... tipo che devi aggiornare qualcosa ?

    ... se così fosse, presumo tu stia sbagliando qualcosa a livello concettuale ...



    P.S. se la query non va prova con
    SELECT DISTINCT(data), SUM(incasso) FROM tabella GROUP BY data
    non ho tempo di testare
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  9. #9
    Utente di HTML.it L'avatar di Tr|k`Tr4k
    Registrato dal
    Jul 2002
    Messaggi
    2,766
    ho provato ma lo stesso non mi funziona.
    Io devo poter far visualizzare ogni giorno quanto hanno incassato sommando il campo "incasso" di tutti gli id ordinati per giorno

    Quindi

    23/05/2006 - 10 euro
    22/05/2006 - 5.00 euro
    21/05/2006 - 31.00 euro
    ecc

    ho provato a modificare ma forse sbaglio qualcos'altro:
    Codice PHP:
    <?
    include("config.php"); 
    $query=mysql_query("SELECT data, SUM(incasso) FROM tabella GROUP BY data");


    echo 
    "$data -  $incasso ";

    ?>

  10. #10
    Utente di HTML.it L'avatar di kuarl
    Registrato dal
    Oct 2001
    Messaggi
    1,093
    Codice PHP:
    <?
    include("config.php");
    $query=mysql_query("SELECT `data`, SUM(incasso) FROM tabella GROUP BY `data`") or die(mysql_error());

    while(list(
    $data$incasso) = mysql_fetch_row($query))
         echo 
    "$data -  $incasso ";
    ?>


    non ricordo se data è una parola riservata, quindi mettici gli apici inversi... e stampa sempre l'errore ad ogni query

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.