Чтение онлайн

на главную - закладки

Жанры

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ

Борри Хелен

Шрифт:

IB_UDF

PI

Linux, Win32

Возвращает значение n = 3.14159...

Аргументы

Аргументы отсутствуют, однако скобки требуются

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

Значение n в виде числа DOUBLE PRECISION

Пример

SELECT PI AS PI_VALUE FROM RDB$DATABASE;

IB_UDF

RAND

Linux, Win32

Возвращает случайное число в диапазоне между 0 и 1. Заметьте, что эта функция не работает в Firebird 1.5

Аргументы

Аргументы отсутствуют,

но скобки требуются

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

Число типа DOUBLE PRECISION

Замечания

В настоящее время используется для установления начального значения генератора

Пример

SELECT RAND AS RANDOM NUMBER FROM RDB$DATABASE;

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

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

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 и т.д.

Поделиться:
Популярные книги

Сама себе хозяйка

Красовская Марианна
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Сама себе хозяйка

Ученичество. Книга 2

Понарошку Евгений
2. Государственный маг
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Ученичество. Книга 2

Надуй щеки!

Вишневский Сергей Викторович
1. Чеболь за партой
Фантастика:
попаданцы
дорама
5.00
рейтинг книги
Надуй щеки!

На границе империй. Том 9. Часть 4

INDIGO
17. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 4

Эволюционер из трущоб. Том 6

Панарин Антон
6. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Эволюционер из трущоб. Том 6

Идеальный мир для Лекаря 19

Сапфир Олег
19. Лекарь
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 19

Гарем на шагоходе. Том 1

Гремлинов Гриша
1. Волк и его волчицы
Фантастика:
боевая фантастика
юмористическая фантастика
попаданцы
5.00
рейтинг книги
Гарем на шагоходе. Том 1

Академия проклятий. Книги 1 - 7

Звездная Елена
Академия Проклятий
Фантастика:
фэнтези
8.98
рейтинг книги
Академия проклятий. Книги 1 - 7

Беглец

Бубела Олег Николаевич
1. Совсем не герой
Фантастика:
фэнтези
попаданцы
8.94
рейтинг книги
Беглец

Сломанная кукла

Рам Янка
5. Серьёзные мальчики в форме
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Сломанная кукла

Офицер-разведки

Поселягин Владимир Геннадьевич
2. Красноармеец
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Офицер-разведки

Имя нам Легион. Том 9

Дорничев Дмитрий
9. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 9

(Не)нужная жена дракона

Углицкая Алина
5. Хроники Драконьей империи
Любовные романы:
любовно-фантастические романы
6.89
рейтинг книги
(Не)нужная жена дракона

Этот мир не выдержит меня. Том 2

Майнер Максим
2. Первый простолюдин в Академии
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Этот мир не выдержит меня. Том 2