Форум программистов, компьютерный форум, киберфорум
Firebird/InterBase
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Безумец
48 / 48 / 12
Регистрация: 06.02.2014
Сообщений: 214
1

Округлить double

07.11.2014, 09:33. Показов 1847. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, необходимо вывести в отчет значение Double с определенной точностью для каждого параметра

пробую
T-SQL
1
2
3
4
SELECT
  parameter, /*ИД*/
  cast(VAL AS decimal(5,2))
FROM
Вопрос как вместо 2йки передать значение хранимое в отдельной таблице для каждого параметра. Не могу ничего придумать

PS firebird 2.0
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.11.2014, 09:33
Ответы с готовыми решениями:

Как округлить значение в запросе Access?
Как округлить значение в запросе Access? Заранее спасибо

Округлить double
Иногда возвращается число с десятыми/сотыми и т.д., к примеру 47,5674, а иногда есть только...

Как округлить Double
Добрый день! Блин самое простое а не могу вспомнить: using System; using...

Как округлить double?
Нужно округлять double до второй цифры после запятой например из double balance =1,04788899992...

9
479 / 392 / 112
Регистрация: 24.04.2012
Сообщений: 1,632
Записей в блоге: 3
07.11.2014, 10:50 2
Цитата Сообщение от mrtmaxxx Посмотреть сообщение
как вместо 2йки передать значение хранимое в отдельной таблице для каждого параметра
Никак. поле должно быть одного типа!
Возможный выход: округлить и переделать в строку.
0
Безумец
48 / 48 / 12
Регистрация: 06.02.2014
Сообщений: 214
07.11.2014, 11:06  [ТС] 3
через udf пробую сейчас
0
912 / 877 / 62
Регистрация: 06.01.2010
Сообщений: 2,367
Записей в блоге: 6
07.11.2014, 11:47 4
если я правильно понял, и необходимая точность хранится в тойже таблицек, то может так:
SQL
1
2
3
4
SELECT
  parameter, /*ИД*/
  CAST(VAL AS DECIMAL(5, parameter_scale))
FROM
а еще лучше на стороне сервера не парится с округлениями, возвращать значение как есть, а форматирование возложить на генератор отчета (т.е. там, где данные выводятся на экран). Не дело серверу таким заниматься.
0
479 / 392 / 112
Регистрация: 24.04.2012
Сообщений: 1,632
Записей в блоге: 3
07.11.2014, 11:58 5
arni,
Цитата Сообщение от arni Посмотреть сообщение
CAST(VAL AS DECIMAL(5, parameter_scale))
ошибку разве не даст?
0
912 / 877 / 62
Регистрация: 06.01.2010
Сообщений: 2,367
Записей в блоге: 6
07.11.2014, 13:40 6
Bit_Man, без понятия, но интуитивно засады не ожидаю.
0
Безумец
48 / 48 / 12
Регистрация: 06.02.2014
Сообщений: 214
07.11.2014, 15:02  [ТС] 7
Цитата Сообщение от Bit_Man Посмотреть сообщение
ошибку разве не даст?
Как раз таки ошибку синтаксиса выдает.

Цитата Сообщение от arni Посмотреть сообщение
а форматирование возложить на генератор отчета
Нужно изменять периодически (часто) точность (лень переделывать кучу отчетов)
0
912 / 877 / 62
Регистрация: 06.01.2010
Сообщений: 2,367
Записей в блоге: 6
07.11.2014, 16:19 8
возможно так:
SQL
1
round(VAL, parameter_scale)
0
479 / 392 / 112
Регистрация: 24.04.2012
Сообщений: 1,632
Записей в блоге: 3
10.11.2014, 03:02 9
Цитата Сообщение от arni Посмотреть сообщение
round(VAL, parameter_scale)
это то что я и предлогал + преобразование в строку для обрезки нулей после запятой - для красоты
0
Безумец
48 / 48 / 12
Регистрация: 06.02.2014
Сообщений: 214
10.11.2014, 07:11  [ТС] 10
Цитата Сообщение от Bit_Man Посмотреть сообщение
преобразование в строку для обрезки нулей после запятой - для красоты
Нули нужны (их количество определяет точность округления)
0
10.11.2014, 07:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.11.2014, 07:11
Помогаю со студенческими работами здесь

Округлить double до десятых
Как Округлить double до десятых? 1.12 должно выглядеть как 1.1 даже не ставлю задачу округления...

Как округлить double
Задача: Все элементы массива поделить на значение наибольшего элемента этого массива. Решение...

Как округлить double с точностью до 5
Например, 17 округлить до 15; 18 до 20; 22,5 до 20; 22,6 до 25?

Как округлить значение Double?
К примеру выходит у меня по итогу вычислений, double равный 12,4760582343 А как его можно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru