Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264

    Trovare valore medio di alcuni campi..

    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 ??

  2. #2
    AVG() è una funzione di aggregazione. Per fare quello che chiedi è sufficiente sommare tutti i campi e dividere il totale per 5.

  3. #3
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    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...

  4. #4
    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?

  5. #5
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    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?

  6. #6

  7. #7
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    ma nella query, come faccio a specificargli l'id ?

  8. #8

  9. #9
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    $query = "SELECT id, AVG(g1 + g2 + g3 + g4 + g5) FROM tabella1 GROUP BY id WHERE id = 5";

    in questo modo?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.