У меня есть образец ввода 1.0950
с поплавковым типом.TSQL Round положительный и отрицательный
Делать это для положительных чисел является правильным, с 1.1
результате
declare @x float
set @x = 1.0950
select round(@x, 1)
Но когда я изменяю @x
отрицательных -1.0950
все еще округляется до -1.1
что неправильно он должен всегда округляет от нуля, поэтому ответ должно быть -1.09
Я бы предпочел не делать двух утверждений, один для положительных и один для отрицательных. Если бы кто-нибудь мог помочь, я был бы очень благодарен!
Если он всегда должен округлять * прочь * от нуля, то, безусловно, '-1.1' является правильным ans wer, так как он больше от нуля до -1.09? –
Извините, я забыл поставить дополнительную информацию. Когда минус -1.0950, он должен округлить до -1.09, но округляется, как есть .5. Согласно документации ROUND, если она положительна, округляется, если отрицательное значение округляется. Это не для меня. – Jjj
Возможный дубликат [Почему Math.Round (2.5) возвращает 2 вместо 3 в C#?] (Http://stackoverflow.com/questions/977796/why-does-math-round2-5-return-2-instead -of-3-in-c) – Helio