Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
Шрифт:
FREEUDFLIB | F_AGEINWEEKSTHRESHOLD(VALUE 1, VALUE 2, MIHISVW, USEMIN, MAXVALUE, USEMAX) |
Win32 | Работает для F_AGEINWEEKS так же, как и F_AgelnDaysThreshold работает для F_AGEINDAYS |
FREEUDFLIB | F_CMONTHLONG(VALUE) |
Win32 | Получает TIMESTAMP или DATE и возвращает название месяца (на английском языке) в виде строки |
Аргументы | VALUE: столбец или выражение, результатом вычисления которого является значение типа DATE или TIMESTAMP |
Возвращаемое значение | 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November' |
Пример | Следующий оператор добавляет 40 дней к текущей дате и возвращает название месяца полученной даты в виде строки: SELECT F CMONTHLONG(CURRENT_DATE + 40) FROM RDB$DATABASE; |
Связанные или похожие функции | См. также F CMONTHSHORT, SDOW, внешнюю функцию EXTRACT |
FREEUDFLIB | F_CMONTHSH0RT(VALUE) |
Win32 | Получает TIMESTAMP или DATE и возвращает сокращенное трехсимвольное название месяца (на английском языке) в виде строки |
FREEUDFLIB | F_MAXDATE(VALUE1, VALUE2) |
Win32 | Получает два значения или выражения типа даты или времени и возвращает более позднюю из них в виде даты и времени (TIMESTAMP В диалекте 3, DATE В диалекте 1) |
Аргументы | VALUE1: столбец или выражение, результатом вычисления которого является значение типа DATE или TIMESTAMP. VALUE2: столбец или выражение, результатом вычисления которого является значение типа DATE или TIMESTAMP |
Возвращаемое значение | Наиболее поздняя дата или выражение даты, преобразованное в тип TIMESTAMP |
FREEUDFLIB | F_MINDATE(VALUE1, VALUE2) |
Win32 | Получает два значения или выражения типа даты или времени и возвращает более раннюю из них в виде даты и времени (TIMESTAMP В диалекте 3, DATE в диалекте 1) |
Аргументы | VALUE1: столбец или выражение, результатом вычисления которого является значение типа DATE или TIMESTAMP VALUE2: столбец или выражение, результатом вычисления которого является значение типа DATE или TIMESTAMP |
Возвращаемое значение | Наиболее ранняя дата или выражение даты, преобразованное в тип TIMESTAMP |
FREEUDFLIB | F_QUARTER(VALUE) |
Win32 | Получает значение или выражение типа даты или времени и возвращает квартал года |
Аргументы | VALUE: столбец или выражение, результатом вычисления которого является значение типа DATE или TIMESTAMP |
Возвращаемое значение | Возвращает 1 для месяцев с января по март, 2 для апреля - июня, 3 для июля - сентября и 4 для октября - декабря |
FREEUDFLIB | F_WOY(VALUE) |
Win32 | Возвращает строку, являющуюся конкатенацией года и номера недели в году |
Аргументы | VALUE: столбец или выражение, результатом вычисления которого является значение типа DATE или TIMESTAMP |
Возвращаемое значение | Возвращает целое число, представляющее цифры года, за которыми идут два символа, представляющие неделю года |
Пример | В следующем примере возвращается 200313: SELECT WOY('26.03.2003') FROM RDB$DATABASE; |
Строковые и символьные функции
IB_UDF | ASCII_CHAR(VALUE) |
Linux, Win32 | Возвращает символ ASCII, соответствующий |
Аргументы | VALUE является столбцом, константой или выражением типа SMALLINT или INTEGER |
Возвращаемое значение | Однобайтовый печатный или непечатный символ |
Пример | Следующий оператор добавит в столбец символ перевода строки и возврата каретки для каждой строки внешней таблицы: UPDATE EXT_FILE SET EOL = ASCII_CHAR(13) || ASCII_CHAR(10); |
IB_UDF | ASCII_VAL(VALUE) |
Linux, Win32 | Возвращает значение ASCII, соответствующее переданному ей десятичному значению |
Аргументы | VALUE является столбцом, константой или выражением типа CHAR |
Возвращаемое значение | Целое десятичное значение ASCII |
Пример | SELECT ASCII_VAL('&') AS ASC_NUM FROM RDB$DATABASE; |
IB_UDF | LOWER(VALUE) |
Linux, Win32 | Возвращает входную строку в виде символов в нижнем регистре. Работает только с символами ASCII |
Аргументы | VALUE является столбцом или выражением, результатом вычисления которого является значение типа строки ASCII длиной 32 765 байт или меньше |
Возвращаемое значение | CHAR(n) или VARCHAR(n) того же размера, что и входная строка |
Замечания | Эта функция может получать и возвращать до 32 767 символов, ограничение на символьные строки Firebird |
Пример | Следующий оператор вернет строку 'come and sit at my table': SELECT LOWER('Come and sit at MY TABLE') AS L_STRING FROM RDB$DATABASE; |
IB_UDF | LPAD(VALUE, LENGTH, IN_CHAR) |
Linux, Win32 | Присоединяет указанный символ IN CHAR к началу входной строки VALUE до тех пор, пока длина результирующей строки не станет равной заданному числу LENGTH |
Аргументы | VALUE: столбец или выражение, результатом вычисления которого является значение типа строки не длиннее, чем (32767 - LENGTH) байт. LENGTH: константа или выражение типа целого. IN CHAR: один символ, который используется в качестве символа заполнителя |
Возвращаемое значение | CHAR(n) или VARCHAR(n), где n имеет значение входного аргумента LENGTH |
Замечания | Эта функция может получать и возвращать до 32 767 символов, ограничение на символьные строки Firebird |
Пример | Следующий оператор вернет строку ' ##########RHUBARB ': SELECT LPAD('RHUBARB', 17, '#') AS LPADDED_STRING FROM RDB$DATABASE; |
Связанные или похожие функции | См. также RPAD |
IB_UDF | LTRIM(VALUE) |
Linux, Win32 | Удаляет начальные пробелы из входной строки |
Аргументы | VALUE - столбец или выражение, результатом вычисления которого является значение типа строки длиной не более 32 767 байт |
Возвращаемое значение | CHAR(N) или VARCHAR(n) без начальных пробельных символов |
Замечания | Эта функция может принимать 32 765 байт, включая пробельные символы, ограничение для символьных строк Firebird |
Пример | Следующий фрагмент триггера BEFORE INSERT будет удалять начальные пробелы из входной строки: NEW.CHARACTER_COLUMN = LTRIM(NEW.CHARACTER_COLUMN) ; |
Связанные или похожие функции | См. также RTRIM, F_RTRIM, F_LRTRIM |