DigitalOcean, un eccezionale servizio di Cloud Hosting, da provare! Inoltre, suggerendolo puoi guadagnare :)

mercoledì 3 giugno 2009

Arrotondamento valute a due decimali con MySql

MySql dispone delle funzioni matematiche di arrotondamento round(), floor() e ceiling(), utilissime in molte situazioni. Quando però bisogna arrotondare valori numerici di valute, allora queste funzioni, se usate così come sono, non restituiscono l'arrotondamento desiderato.

Facciamo alcuni esempi:

round(1.15,1)=1.2 OK
round(1.25,1)=1.2 NO, dovrebbe essere 1.3
round(1.35,1)=1.4 OK
round(1.45,1)=1.4 NO, dovrebbe essere 1.5
round(1.55,1)=1.6 OK


Per ottenere l'arrotondamento desiderato possiamo utilizzare la seguente formula:
floor(num * 100 + .55)/100

Nessun commento:

Posta un commento

DigitalOcean, un eccezionale servizio di Cloud Hosting, da provare! Inoltre, suggerendolo puoi guadagnare :)

Cerca su Wiki

Cerca su Google

Cerca nel Blog con Google