クエリを実行するとき:
SELECT * FROM some_table WHERE id = 123
浮動小数点数のフォーマットは、ユーザーインターフェイスに依存しています。使用しているインターフェースは、2文字以上ではなく2文字を使用しています。結局のところ、表示する「正しい」番号に関する情報はありません。
数値を文字列または小数としてフォーマットすることにより、正しい数値を表示するようにインターフェイスを説得できます。例:
select format(some_float_field, 3)
これを小数点以下3桁の文字列に変換します。注意:不要なコンマも追加されます。これも機能するはずです:
select cast(some_float_field as decimal(8, 3))
次のような操作を行うことで、データが正しいことを簡単に検証できることに注意してください。
select *
from some_table
where some_float_field between 1919.987 - 0.0001 and 1919.987 + 0.0001;
=
は使用しないことに注意してください 浮動小数点値についてですが、あなたはすでにそれを理解しています。