Float è accurato per 15 cifre significative solo (in SQL Server).
Ciò è dimostrato da 1.52415693411713 E+17
dove 1.52415693411713
(15 cifre) è il più preciso possibile. Il 020...
finale dopo 152415693411713
con STR
è inventato è la risoluzione in virgola mobile
Per mantenere la precisione, non utilizzare float. È così semplice. CAST in decimale se vuoi per il calcolo, ma se riporti CAST in float, sei limitato a 15 cifre
Vedi "Quello che ogni scienziato informatico dovrebbe sapere sull'aritmetica in virgola mobile "