• Ласкаво просимо на Спільнота для обміну досвідом між користувачами програм УкрБланк, УкрСклад, УкрЗарплата.
 

Округление в большую сторону

Автор Алла Синицкая, Березень 23, 2016, 13:24:40

Попередня тема - Наступна тема

0 Користувачі і 1 Гість дивляться цю тему.

Алла Синицкая

Есть запрос для изменения цены.

UPDATE tovar_name SET CENA_r = udf_roundto(CENA_R * 1.028, 0) WHERE tip = 1134

Если цена выходит 3635,5 грн, то этот запрос выставляет цену 3635 грн, просто обрезая копейки и не округляя в большую сторону. А как выставить правильную цену с увеличением в большую сторону и обрезанием всех знаков после запятой, чтоб цена получалась 3636 грн.

Спасибо всем за помощь!



admin

Вместо
udf_roundto(CENA_R * 1.028, 0)
попробуйте
round(CENA_R * 1.028, 0)
Это штатная функция которая уже есть в новом Firebird, вот описание функции:
http://www.firebirdsql.org/refdocs/langrefupd25-intfunc-round.html

Алла Синицкая

Ураа!! Заработало!
Спасибо большое!

victorpolo

о, и себе хочу так сделать.
полный вид будет такой (для розн.цены) : UPDATE tovar_name SET CENA_r = round(CENA_R * 1.028, 0) ?