Дата и время в часовом поясе 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'.