www.citforum.ru |  |  |  | Сервер содержит море(!) аналитической информации!
Поиск | Рубрикатор | Новости сервера | Учебный центр | Книжный магазин | Реклама на сервере

19-23 февраля 2001г. Учебный курс "Системное администрирование OC UNIX"
| Закажите полную копию CitForum.ru на CD!

| Новый раздел: "Книги, которые мы выбираем"

CITFORUM.RU >>> БАЗЫ ДАННЫХ >>> /database/oraclepr/oraclepr_13.shtml

Функции работы с датами

Функция | Возвращаемое значение
ADD-MONTHS (d,n) | Дата d плюс n месяцев.
LAST-DAY (d) | Последнее число месяца, указанного в d
MONTHS-BETWEEN (d,e) | Число месяцев между датами d1 и d2.
NEW-TIME (d,a,b) | Дата и время в часовом поясе a, соответствующие дате и времени в часовом поясе b, при этом d,a и b значения типа CHAR, определяющие часовые пояса.
NEW-DAY (d,char) | Дата первого после даты (/дня недели, название которого записано в с1шг.
SYSDATE | Текущая дата и время.

Усечение и округление дат

Функция | Возвращаемое значение
ROUND(d[,fmt]) | Дата d, округленная до единиц, указанных в форматной маске.
TRUNC(d[,fmt]) | Дата d, усеченная по форматной маске fmt.

Форматные маски дат для функций ROUND и TRUNC.

В таблице перечислены форматные маски, которые можно использовать в функциях ROUND и TRUNC. По умолчанию используется форматная маска "DD".

Форматная маска | Возвращаемое значение
CC или SCC | Первый день столетия
SYYYY или YYYY или YYY или YY или Y или YEAR или SYEAR | Первый день года ( округляется до 1 июля)
Q | Первый день квартала (округляется до 16 числа второго месяца квартала)
MONTH или MON или MM или RM | Первый день месяца (округляется до 16 числа)
WW или IW | Тот же день недели, что и первый день текущего года
W | Тот же день недели, что и первый день текущего месяца
DDD или DDD или J | День
DAY или DY или D | Первый день недели
HH HH12 HH24 | Час
MI | Минута

Функции преобразования

Функция | Возвращаемое значение
CHARTOROWID(char) | Char преобразуется из типа данных CHAR в тип данных ROWID
CONVERT( char, dest_char_set [,source_char_set]) | Преобразует символьную строку из набора символов source_char_set в набор символов dest_char_set
HEXTORAW ( char) | Преобразует значение char, содержащее шестнадцатиричные цифры, в значение типа данных RAW
RAWTOHEX ( raw) | Преобразует raw в символьное значение, содержащее его шестнадцатиричный эквивалент
ROWIDTOCHAR (rowid) | Преобразует значение типа ROWID в значение типа CHAR
TO_CHAR ( expr [,fmt [,'nls_num_fmt']]) | Преобразует значение expr типа DATE или NUMBER в значение типа CHAR по формату форматной маски fmt. Если fmt отсутствует, значения типа DATE преобразуются по формату, заданному по умолчанию, и значения типа NUMBER- в значение типа CHAR с шириной, достаточной для того, чтобы вместить все значащие цифры. Значение 'nls_num_fmt' определяет связанные с языком форматные маски. В Trusted ORACLE преобразует значения MLS или MLS_LABEL в значение типа VARCHAR2
TO_DATE ( char[,fmt [,'nls_lang']]) | Преобразует char в значение типа DATE с помощью форматной маски fmt. Если fmt опускается, используется форматная маска для даты, принятая по умолчанию.'nls_ang' задает язык, используемый в названиях месяцев и дней
TO_MULTI_BYTE ( char) | Преобразует однобайтовые символы, имеющие многобайтовые эквиваленты, в соответствующие многобайтовые символы
TO_NUMBER (char [,fmt [,'nls_lang']]) | Преобразует char, содержащее число в формате, указанном параметром fmt, в значение типа NUMBER. 'nls_lang' задает язык, определяющий символы валют и числовые разделители
TO_SINGLE_BYTE ( char) | Преобразует многобайтовые символы, имеющие однобайтовые эквиваленты, в соответствующие однобайтовые символы

Форматные маски.

Этот раздел описывет форматные маски дат и чисел.

Форматные маски дат в TO_CHAR и TO_DATE.

Элементы форматной маски даты перечислены в приведенной ниже таблице. Любую комбинацию этих элементов можно использовать как аргумент fmt функций TO_CHAR или TO_DATE. По умолчанию fmt равен 'DD-MON-YY'.

Элемент формата | Возвращаемое значение
SCC или CC | Столетие; если указано 'S' то перед датами до нашей эры ставится '-'.
YYYY или SYYYY | Год; если указано'S' то перед датами до нашей эры ставится '-'. YYY или YY или Y] Последние 3, 2, или1 цифра года.
IYYY | 4 цифры года по стандарту ISO. IYY или IY или I] Последние 3, 2, или1 цифра года по стандарту ISO.
Y,YYY | Год с запятой в указанной позиции.
SYEAR или YEAR | Год, записанный словами, а не цифрами; если указано'S' то перед датами до нашей эры ставится '-'.
RR | Последние 2 цифры года; для указания года в других столетиях.
BC или AD | BC- до нашей эры(до н.э.); AD - нашей эры
B.C. или A.D. | B.C.- до нашей эры(до н.э.); A.D. - нашей эры
Q | Квартал (1, 2, 3, 4;JAN-MAR=1).
MM | Месяц(01-12; JAN=1).
RM | Нумерация месяцев римскими цифрами(I-XII; JAN=I).
MONTH | Название месяца, дополненное пробелами до 9-ти символов.
MON | Сокращенное название месяца.
WW или W | Неделя года (1-52) или месяца (1-5).
IW | Неделя года (1-52 или 1-53) по стандарту ISO.
DDD или DD или D | День года (1-366) или месяца (1-31) или недели (1-7).
DAY | Название дня, дополненное пробелами до 9-ти символов.
DY | Сокращенное название дня.
J | Дата юлианского календаря; число дней, считая с первого января 4712 года до н.э.
AM или PM | AM -до полудня,PM- после полудня
A.M. или P.M. | A.M. -до полудня,P.M.- после полудня
HH или HH12 | Час дня (1-12).
HH24 | Час дня (0-23).
MI | Минута (0-59)
SS или SSSSS | Секунда (0-59) или количество секунд после полуночи (0-86399).
-/,.;: | Знаки пунктуации.
"...текст..." | Текст воспр в возвращенном значении.

Префикы и суффиксы элементов формата даты

К элементам формата даты можно добавлять следующие префиксы:

FM | "Режим заполнения".Подавляет заполнение пробелами, когда стоит перед MONTH или DAY
FX | "Точный формат". Этот модификатор задает точное соответствие символьного аргумента и форматной маски даты в функции TO_DATE.

К элементам формата даты можно добавлятть следующие суффиксы:

TH | Порядковый номер ("DDTH" для "4TH").
SP | Номер, записанный словами ("DDSP" для "FOUR").
SPTH и THSP | Порядковый номер, записанный словами ("DDSPTH" для "FOURTH").

Прописные и строчные буквы в элементах формата даты.

Следующие строки задают вывод прописными буквами, вывод прописными буквами только начальных букв слов, или вывод строчными буквами.

Прописные | Прописная начальная | Строчные
DAY | Day | .day
DY | Dy | .dy
MONTH | Month | .month
MON | Mon | .mon
YEAR | Year | .year
AM | Am | .am
PM | Pm | .pm
A.M. | A.m. | a.m.
P.M. | P.m. | p.m.

Если к элементу формата даты добавляется префикс или суффикс, то регистр (прописные, строчные буквы) определяется элементом формаиа , а не префиксом или суффиксом. Например, 'ddTH ' задает "04th" а не "04TH".

Элементы формата числа для TO_CHAR

В следующей таблице перечислены элементы формата числа. Комбинацию этих элементов можно использовать как аргумент fnu функции TO_CHAR.

Элемент формата | Пример | Описание
9 | '999' | Количество девяток указывает число возвращаемых значащих цифр.
0 | '0999' | Добавляет нули перед числом.
$ | '$9999' | Добавляет знак доллара перед числом.
В | 'В9999' | Заменяет нулевые значения пробелами.
Ml | '99999MI' | Возвращает знак '-' после отрицательных значении.
S | S9999 | Возвращает знак '+' для положительных значений и знак '-' для отрицательных значений в указанную позицию.
PR | '9999PR' | Возвращает отрицательные значения в <угловых скобках>.
D | 99D99 | Возвращает символ, представляющий десятичную точку, в указанную позицию.
С | 9G999 | Возвращает символ разделения цифр на группы в указанную позицию.
С | С999 | Возвращает международной знак валюты в указанную позицию.
L | L999 | Возвращает знак местной валюты в указанную позицию.
, | '9,999' | Возвращает запятую в указанную позицию.
. | '99.99' | Возвращает точку в указанную позицию.
V | '999V99' | Умножает значение на 10n, где n количество девяток после 'V'.
ЕЕЕЕ | '9.999ЕЕЕЕ' | Возвращает значение в нормализованной форме. В fnu должно быть ровно четыре буквы 'Е'.
RN или rn | RN | Возвращает римские цифры прописными или строчными буквами (целое число в диапазоне от 1 до 3999).
DATE | 'DATE' | Возвращает значение, преобразованное из даты юлианского календаря в формат 'MM/DD/YY'.

Назад | Содержание | Вперед

Реклама на сервере |

В начало | Наверх | Поиск | Рубрикатор | Новости сервера | Учебный центр | Книжный магазин

|  | Быстрый переход >>> |

Комментарии: info@citmgu.ru |  | Copyright ©

Design by Andre M. Erofeev