|
Функция |
Возвращаемое значение |
|
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'. |
Навигация