powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / SQL Server 2005 ошибка round(...,2)
3 сообщений из 3, страница 1 из 1
SQL Server 2005 ошибка round(...,2)
    #39596907
Фотография Дикий Билл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В запросе используется конструкция вида round(f1 * f2, 2) там получается число 3142044,235.
И результат округления 3142044,23!

Причем если выполнить select round(3142044.235,2), то округляет правильно.
...
Рейтинг: 0 / 0
SQL Server 2005 ошибка round(...,2)
    #39596930
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тип данных FLOAT?
Это же очевидно... тип приближенный
Код: sql
1.
2.
3.
4.
5.
6.
DECLARE
	@F1 FLOAT = 1571022.117500,
	@F2 FLOAT = 2.0

SELECT ROUND(@F1 * @F2, 2), @F1 * @F2, @F1, CAST(@F1 AS DECIMAL(32, 20))
--3142044,23	3142044,235	1571022,1175	1571022.11749999990000000000
...
Рейтинг: 0 / 0
SQL Server 2005 ошибка round(...,2)
    #39596943
Фотография Дикий Билл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X-CiteТип данных FLOAT?
Это же очевидно... тип приближенный
Код: sql
1.
2.
3.
4.
5.
6.
DECLARE
	@F1 FLOAT = 1571022.117500,
	@F2 FLOAT = 2.0

SELECT ROUND(@F1 * @F2, 2), @F1 * @F2, @F1, CAST(@F1 AS DECIMAL(32, 20))
--3142044,23	3142044,235	1571022,1175	1571022.11749999990000000000


Угу, уже разобрался, спасибо.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / SQL Server 2005 ошибка round(...,2)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]