IB_UDF | ROUND(VALCE) |
Linux, Win32 | Округляет число с фиксированной точкой до ближайшего целого |
Аргументы | VALUE является столбцом или выражением, вычисляемым в число с фиксированной точкой с дробными разрядами >0 |
Возвращаемое значение | Число целого типа |
Замечания | Это полное округление. Если цифра сразу после десятичной точки больше или равна 5, то к цифре перед десятичной точкой добавляется единица, и у числа отсекаются дробные цифры. В противном случае просто отсекаются все дробные цифры |
Пример | Следующий оператор составляет смету на основе результата округления произведения двух чисел NUMERIC(11,2): SELECT JOB_NO, ROUND(RATE * HOURS) + 1 AS ESTIMATE FROM QUOTATION WHERE RATE IS NOT NULL AND HOURS IS NOT NULL; |
Связанные или похожие функции | См. также TRUNCATE(), F_ROUNDFLOAT() |
IB_UDF | SIGN(VALUE) |
Linux, Win32 | Возвращает 0, 1 или -1 в зависимости от того, является ли входное значение положительным, нулем или отрицательным соответственно |
Аргументы | VALUE является столбцом или выражением, вычисляемым в число типа DOUBLE PRECISION |
Возвращаемое значение | Число типа DOUBLE PRECISION |
Пример | Фрагмент триггера: ... IF (SIGN(NEW.CURRENT_VALUE) < 1) THEN ...; |
IB_UDF | SQRT(VALUE) |
Linux, Win32 | Возвращает квадратный корень числа |
Аргументы | VALUE является столбцом или выражением, вычисляемым в число типа DOUBLE PRECISION |
Возвращаемое значение | Число типа DOUBLE PRECISION |
Пример | Фрагмент триггера: ... IF (SQRT(NEW.HYPOTENUSE) = SQRT(NEW.SIDE1) + SQRT(NEW.SIDE2)) THEN NEW.RIGHT ANGLED TRIANGLE = 'T'; |
FBUDF | TRUNCATE(VALUE) |
Linux, Win32 | Усекает тип с фиксированной точкой до следующего меньшего целого |
Аргументы | VALUE является столбцом или выражением, вычисляемым в число с фиксированной точкой с дробными разрядами > 0 |
Возвращаемое значение | Число целого типа |
Замечания | Как и для некоторых других функций из этой библиотеки, вам нужно два объявления, чтобы использовать 32- и 64-битовый вход. Проверьте объявления в скрипте fdudf.sql truncate и i64truncate |
Пример | Следующий оператор составляет смету на основе результата усечения произведения двух чисел NUMERIC (11,2): SELECT JOB_NO, TRUNCATE (RATE * HOURS) + 1 AS ESTIMATE FROM QUOTATION WHERE RATE IS NOT NULL AND HOURS IS NOT NULL; |
Связанные или похожие функции | См. также ROUND(), F_TRUNCATE() |
Функции даты и времени