Выбрать главу

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()

Функции даты и времени

FBUDF

DOW(VALUE)

Linux, Win32

Получает тип TIMESTAMP и возвращает день недели (на английском языке) в качестве строки со смешанными строчными и прописными буквами

Аргументы

VALUE- столбец или выражение, результатом вычисления которого является тип TIMESTAMP

Возвращаемое значение

'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' или 'Sunday'

Пример

Этот оператор добавляет четыре дня и возвращает день недели для настроенной даты:

SELECT DOW(CURRENT_DATE + 4) FROM RDB$DATABASE;

Связанные или похожие функции

См. также SDOW(), внешнюю функцию EXTRACT()

FBUDF

SDOW(VALUE)

Linux, Win32

Получает тип TIMESTAMP и возвращает день недели (на английском языке) в качестве аббревиатуры со смешанными строчными и прописными буквами

Аргументы

VALUE - столбец или выражение, результатом вычисления которого является тип TIMESTAMP

Возвращаемое значение

'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat' или 'Sun'

Пример

Этот оператор добавляет четыре дня и возвращает день недели для настроенной даты:

SELECT SDOW(CURRENT_DATE + 4) FROM RDB$DATABASE;

Связанные или похожие функции

См. также DOW(), внешнюю функцию EXTRACT()

FBUDF

ADDDAY(VALUE1, VALUE2)

Linux, Win32

Добавляет полное число дней к типу даты или времени и возвращает эту измененную дату в виде TIMESTAMP

Аргументы

VALUE1: столбец или выражение, результатом вычисления которого является тип даты или времени.

VALUE2: количество добавляемых дней (целое число) или целое выражение

Возвращаемое значение

Настроенное TIMESTAMP (эквивалентно VALUE1 + VALUE2)

Замечания

Если входом является тип TIME, то дни будут добавлены к этому времени дня текущей даты. Если это тип DATE, ТО время дня будет полночью

Пример

Следующий оператор прибавляет 4 дня к текущей дате и возвращает полученную дату и время 0 часов 0 минут 0 секунд:

SELECT ADDDAY(CURRENT_DATE, 4)

FROM RDB$DATABASE;

Связанные или похожие функции

См. также ADDHOUR(), ADDMINUTE() и др.

FBUDF

ADDHOUR(VALUE1, VALUE2)

Linux, Win32

Добавляет полное количество часов к типу даты или времени и возвращает измененную дату в виде типа TIMESTAMP

Аргументы

VALUE1: столбец или выражение, результатом вычисления которого является тип даты или времени.

VALUE2: количество добавляемых часов (целое число) или целое выражение

Возвращаемое значение

Настроенное значение TIMESTAMP

(эквивалентно VALUE1 + (VALUE2 / 2))

Замечания

Если входное значение имеет тип TIME, ТО часы добавляются к этому времени для текущей даты. Если это тип DATE, то время дня будет полночью

Пример

Следующий оператор добавляет 10 часов и возвращает измененную дату и время:

SELECT ADDHOUR(CURRENT_TIMESTAMP, 10) FROM RDB$DATABASE;

Связанные или похожие функции

См. также ADDDAY(), ADDMINUTE() и т.д.

FBUDF

ADDMILLISECOND(VALUE1, VALUE2)

Linux, Win32

Добавляет полное количество миллисекунд к типу даты или времени и возвращает измененную дату в виде типа TIMESTAMP

Аргументы

VALUE1: столбец или выражение, результатом вычисления которого является тип даты или времени.

VALUE2: количество добавляемых миллисекунд (целое число) или целое выражение

Возвращаемое значение тип TIMESTAMP

Замечания

Если входное значение имеет тип TIME, то миллисекунды добавляются к этому времени для текущей даты. Если это тип DATE, то время дня будет полночью

Пример

Следующий оператор добавляет 61 234 миллисекунды к текущему системному времени типа TIMESTAMP:

SELECT ADDMILLISECOND(CURRENT_TIME, 61234)

FROM RDB$DATABASE;

Связанные или похожие функции

См. также ADDDAY(), ADDMINUTE() и т.д.

FBUDF

ADDMINUTE(VALUE1, VALUE2)

Linux, Win32

Добавляет полное количество минут к типу даты или времени и возвращает измененную дату в виде типа TIMESTAMP

Аргументы

VALUE1: столбец или выражение, результатом вычисления которого является тип даты или времени.