Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: UPDATE con somma

  1. #1
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837

    UPDATE con somma

    Buongiorno,
    avrei un problema nell'eseguire una query.
    In pratica ho una tabella del tipo:
    TABLE: classifica
    ID | SQUADRA | PUNTI
    1 | MILANO | 3

    dovrei aggiornare il campo PUNTI sommando i punti che già sono presenti nella riga con quelli che passo ad una variabile.

    in pratica dovrei fare una query del tipo:

    UPDATE classifica SET punti = punti_riga + $punti_variabile

    Grazie a tutti.

  2. #2
    1. ricevi i punti da sommmare
    2. estrai i punti dal rispettiva riga e fai la somma
    3. fai l'update

  3. #3
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    Ti ringrazio per la risposta,
    diciamo che fino a lì ci sono arrivato

    E' possibile farlo con un'unica query?

  4. #4

  5. #5
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    Originariamente inviato da serdominik
    1. ricevi i punti da sommmare
    2. estrai i punti dal rispettiva riga e fai la somma
    3. fai l'update
    Perfetto quindi la query dovrebbe essere così ?
    $punti = 3; // preso dal db
    $punti1 = 6 // passato da una variabile
    Codice PHP:
    UPDATE classifica SET punti SUM($punti $punti1WHERE id $idsquadra1 
    se provo ad eseguire questa query mi da un errore: "Invalid use of group function"

  6. #6
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Si perche la funzione sum ha un comportamento tutto suo.

    Considera che mysql gestisce gli operatori "+" "-" "*" etc .

    se fai :
    UPDATE classifica SET punti = punti + $punti1 WHERE id = $idsquadra1
    funziona.

    Cmq si serdonik e' possibile farlo senza prob. Con la query qui sopra.

    Inoltre leggete sempre la documentazione prima.

  7. #7
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    Ottimo!!
    E' pensare che l'avevo scritta ma non provata.
    E' + semplice di quanto pensassi.

    Ti ringrazio.

  8. #8
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Ghghghgh bueno adesso spacca tutto

  9. #9
    Originariamente inviato da Virus_101

    Cmq si serdominik e' possibile farlo senza prob. Con la query qui sopra.

    Inoltre leggete sempre la documentazione prima.
    Scusa l'ignoranza allora...

    E' possibile fare una sola query dove estrae i dati e salva i dati?

    Per me questa è nuova

  10. #10
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Si e' possibile. No prob anche io l'ho scoperto da poco.

    fai sta prova in sql

    Codice PHP:
    create database test;
    use 
    test;

    create table test
    (
       
    id int auto_increment not null,
       
    campo  int default 0,

       
    primary key(id)

    );

    insert into test(campovalues (12) , (10);

    select from test;

    update test set campo campo+12 where id = (select min(idfrom test order by id asc);

    select from test
    se nn ho sbagliato nulla dovrebbe aggiornare il campo con l'id piu' basso aggiungendo 12 al valore.

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.