-
Classifica PHP MySQL
Ciao, sto cercando di fare uno script in PHP e MySQL per estrarre dei valori, sommarli e metterli nella tabella.
Ho questa tabella SQL:
Codice:
`id` int(11) NOT NULL,
`ip` text NOT NULL,
`canzone` text NOT NULL,
`voto` int(11) NOT NULL
Ho già creato uno script per l'inserimento dei valori,
ho messo -1 se la canzone non piace o 1 se la canzone piace,
l'inserimento funziona benissimo e ora devo stampare la classifica..
Non so da dove partire per farlo, ho sentito sul web che esiste una funzione di nome SUM ma non ho capito come usarla nel mio caso. Qualcuno mi sa aiutare? grazie
-
Ciao,
la funzione SUM è una funzione di aggregazione.
Ovvero, dato il recordset risultante da una query, aggrega le tuple secondo una particolare logica (es: somma dei campi, media).
La tua tabella mi sembra che non segua uno schema logico relazionale, cosa che ti consiglio di adottare per comprendere meglio il funzionamento di MySQL stesso.
Ti faccio qualche esempio su come usare la funzione SUM:
Codice:
-- per estrarre la somma dei voti di ogni canzone
SELECT canzone, SUM(voto) voto_totale FROM votazioni GROUP BY canzone ORDER BY voto_totale DESC
-- per estrarre la somma dei voti per una specifica canzone
SELECT SUM(voto) v FROM votazioni WHERE canzone = 'nome canzone'
Ti allego un sqlfiddle che implementa l'esempio: http://sqlfiddle.com/#!9/36592/3