Ciao a tutti
ho una tabella in mysql con 6 campi:
id
g1 (4)
g2 (9)
g3 (0)
g4 (1)
g5 (3)
vorrei riuscire a fare una query che mi restituisca il valore medio dei campi g1,g2,g3,g4,g5..
dove id = 3
posso usare la funzione AVG ??
Ciao a tutti
ho una tabella in mysql con 6 campi:
id
g1 (4)
g2 (9)
g3 (0)
g4 (1)
g5 (3)
vorrei riuscire a fare una query che mi restituisca il valore medio dei campi g1,g2,g3,g4,g5..
dove id = 3
posso usare la funzione AVG ??
AVG() è una funzione di aggregazione. Per fare quello che chiedi è sufficiente sommare tutti i campi e dividere il totale per 5.
il problema è che lo stesso id potrebbe ricorrere più volte.. anche decine di volte..
vorrei evitare di fare un ciclo e di calcolare la media...
Se l'ID ricorre più volte, che media vuoi ottenere?
Quella dei valori in ogni record, quella di ogni singolo valore per tutti i record?
in pratica i campi g1,g2,g3,g4,g5 contengono il voto dato dagli utenti ad un prodotto
voglio dare un voto medio (es: 5+3+4+2+5 / 5)
ma come ti dicevo lo stesso prodotto (id) può essere valutato più volte...
riesco ad evitare di calcolare manualmente il voto medio?
Utilizza AVG((g1 + g2 + g3 + g4 + g5) / 5)
ma nella query, come faccio a specificargli l'id ?
$query = "SELECT id, AVG(g1 + g2 + g3 + g4 + g5) FROM tabella1 GROUP BY id WHERE id = 5";
in questo modo?