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

    Comando SQL AVG non da decimali..

    Ciao, sto costruendo un sistema banale di rating per alcune pagine del mio sito. Mi tornerebbe comoda una query che mi restituisce la MEDIA dei punteggi inseriti nel db.
    Trovo il comando SQL AVG perfetto ma purtroppo non mi restituisce i numeri oltre la virgola, nel senso che se ho 1 e 3 come punteggi, vorrei avere come risultato 1,5 e non 1 come mi restituisce la query:


    codice:
    select count(votes.Rating) as Total, avg(votes.Rating) as Average from rating_urls urls inner join rating_votes votes on votes.URLID = urls.ID where votes.Rating < 6 and urls.URL='" & m_sURL & "'
    Sapere come fare per avere i decimali dopo la virgola con il comando AVG?

    Grazie.
    Marco Lombardo.
    Le inezie fanno la prefezione, e la perfezione non è una inezia (Michelangelo).
    about.me/marco.lombardo
    marco.lombardo@gmail.com

  2. #2
    Mi sono attrezzato così, alla fine il risultato è lo stesso ma con numero dopo la virgola:

    cast(sum(votes.Rating) AS FLOAT)/COUNT(votes.Rating) as Average

    ciao e se vi va il mio lavoro è SmallAdvertise.com
    Marco Lombardo.
    Le inezie fanno la prefezione, e la perfezione non è una inezia (Michelangelo).
    about.me/marco.lombardo
    marco.lombardo@gmail.com

  3. #3
    Era sufficiente fare il cast del valore prima di applicare la funzione avg:

    codice:
    avg(cast(VOTES.RATING as float))
    xxx

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.