PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come posso prevenire/rilevare un underflow in un calcolo Postgresql che utilizza EXP()

La funzione exp è chiamata funzione esponenziale e il suo inverso è il logaritmo naturale, o logaritmo in base e. Il numero e è anche comunemente definito come base del logaritmo naturale

In altre parole, exp(x) ed e^x sono la stessa funzione. Tuttavia, poiché e è un numero trascendentale, e quindi irrazionale, il suo valore non può essere dato esattamente.

Il valore numerico di e troncato a 10 cifre decimali è 2.71828 1828

Quindi, la funzione exp(x) è tecnicamente valida per tutti i valori di x, ma in pratica puoi limitarli. Ad esempio, se li limiti a +/- 700 dovresti coprire tutti i casi che coprono l'intervallo

exp(700) = 1.01423205 × 10^304
exp(-700) = 9.85967654 × 10^-305

Più di questo dipende dalla tua applicazione