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

    Query con risultati incomprensibili...

    Ciao a tutti,
    scrivo perchè mi trovo in una situazione che non riesco a spiegarmi.
    Ho una query sql che deve calcolare una percentuale partite giocate/vinte di alcuni tennisti(dovrebbe restituirmi un valore arrotondato alla seconda cifra decimale).

    "SELECT Tennisti.Nome, Tennisti.Cognome, Tennisti.Giocate, Tennisti.Vittorie, ROUND((Tennisti.Vittorie * 100) / Tennisti.Giocate, 2) AS perc
    FROM ....."
    Valori immessi: Vittorie = 30, Giocate = 33
    Risultato: dovrebbe darmi 90,91 invece mi restituisce 90

    Dopo ore di sbattimento ho fatto un tentativo per vedere se, per qualche motivo, la query troncava i decimali.
    Ho modificato l'operazione come segue:
    "...ROUND((Tennisti.Vittorie * 125.45) / Tennisti.Giocate, 2) AS perc..."
    ed ho visto che mi restituiva come risultato 114,05000000000
    quindi ho capito che si comportava nel modo corretto se moltiplicavo per un numero con decimali.

    A questo punto ho provato a modificare la query come segue:
    "SELECT Tennisti.Nome, Tennisti.Cognome, Tennisti.Giocate, Tennisti.Vittorie, ROUND((Tennisti.Vittorie * 100) / (Tennisti.Giocate + 0.0000000001), 2) AS perc
    FROM ....."
    e, finalmente ho ottenuto il risultato voluto: perc=90,9100000000

    Ma, mi rendo conto che è un risultato ottenuto artificialmente e mi piacerebbe capire perchè mi da questo problema.
    Spero di essemi spiegato bene.
    Grazie.

  2. #2
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    per i decimali utilizzerei cdbl(numero) ma non ho capito come inserisci la variabile...

    cmq documentati e prova!
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  3. #3
    Le variabili sono recuperate da un database sql ...
    Scusa ma cos'è cdbl(numero)???

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.