Po uruchomieniu zapytania:
SELECT * FROM some_table WHERE id = 123
Polegasz na interfejsie użytkownika, aby sformatować liczby zmiennoprzecinkowe. Interfejs, którego używasz, używa dwóch znaków, a nie więcej. W końcu nie ma informacji o „właściwym” numerze do wyświetlenia.
Możesz przekonać interfejs, aby wyświetlał właściwą liczbę, formatując liczbę jako ciąg lub jako ułamek dziesiętny. Na przykład:
select format(some_float_field, 3)
skonwertuje to na łańcuch z trzema miejscami po przecinku. Jedna uwaga:doda również przecinki, których możesz nie chcieć. To również powinno działać:
select cast(some_float_field as decimal(8, 3))
Pamiętaj, że możesz łatwo sprawdzić poprawność danych, wykonując coś takiego:
select *
from some_table
where some_float_field between 1919.987 - 0.0001 and 1919.987 + 0.0001;
Pamiętaj, że nie chcesz używać =
na wartościach zmiennoprzecinkowych, ale już to rozumiesz.