Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Query con "SUM()" non finziona correttamente

    Ciao!

    Ho 2 tabelle:

    tabella_1

    ID=1 NOME=antonio
    ID=2 NOME=giorgio
    ID=3 NOME=felice

    tabella_2

    ID=1 NOME=antonio VOTI=6 DATA=20/3/06
    ID=1 NOME=antonio VOTI=22 DATA=25/3/06
    ID=3 NOME=felice VOTI=2 DATA=28/3/06
    ID=1 NOME=antonio VOTI=13 DATA=29/3/06
    ID=3 NOME=felice VOTI=1 DATA=31/3/06

    Devo sommare i voti di ogni nome della tabella 2 ed inserire il risultato in una terza tabella:

    tabella_3

    ID=1 NOME=antonio TOT_VOTI=(tot)
    ID=2 NOME=giorgio TOT_VOTI=(tot)
    ID=3 NOME=felice TOT_VOTI=(tot)

    Ho usato il seguente codice con queste query:

    $result = $DB->query("SELECT ID FROM tabella_1");
    while(list($id_singolo) = mysql_fetch_row($result)) {
    $query = $DB->query("SELECT SUM(VOTI) FROM `tabella_2` WHERE `ID` = $id_singolo");
    $row = mysql_num_rows($query);
    $voti = $row['VOTI'];
    $DB->query("INSERT INTO tabella_3(ID, TOT_VOTI)VALUES('$id_singolo', '$voti')");
    }

    Ma purtroppo non funziona correttamente, infatti nella tabella_3 vengono inseriti i seguenti record:

    tabella_3

    ID=1 NOME=antonio TOT_VOTI=0
    ID=2 NOME=giorgio TOT_VOTI=0
    ID=3 NOME=felice TOT_VOTI=0

    Perchè? Dove sbaglio?
    Grazie a tutti ciao!!
    _____Need_4_Know______

  2. #2
    basta una sola query
    INSERT INTO tabella_3 (ID, TOT_VOTI) SELECT ID, SUM(VOTI) FROM tabella_2 GROUP BY ID

  3. #3
    bubu77...

    E' incredibile.. con una query mi hai risolto tutti i problebi!

    Ti ringrazio di cuore, adesso testo il tutto e ti faccio sapere.
    Ciao!
    _____Need_4_Know______

  4. #4
    Testato e perfettamente funzionante!
    _____Need_4_Know______

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.