У меня есть значение 1555.4899999999998
, сохраненное в столбце float
с точностью по умолчанию (53). Когда я делаю простой select
, SSMS округляет вывод, а не печатает его со всей доступной точностью. Это вызвало у меня некоторые ошибки, поскольку напечатанное значение не работает как литерал float
, чтобы соответствовать фактическому сохраненному значению.
Например (обратите внимание, что оба эти числа имеют точное представление по умолчанию float
),
declare @f1 float
declare @f2 float
set @f1 = 1555.49
set @f2 = 1555.4899999999998
select @f1, @f2
select STR(@f1,30,15), STR(@f2,30,15)
Выходы:
1555.49 1555.49
1555.490000000000000 1555.489999999999800
В Query Analyzer эти первые select
выводят:
1555.49 1555.4899999999998
Именно такое поведение я хочу получить от Management Studio. Есть ли способ предотвратить округление SSMS при отображении результатов?