Функции работы с датами
Групповые функции
Функция | Возвращаемое значение |
AVG([DISTINCT|ALL]n) | Среднее значение от n, нулевые значения опускаются. |
COUNT([ALL]*) | Число строк, извлекаемых в запросе или подзапросе. |
COUNT(IDISTINCT|ALL] e xpr) | Число строк, для которых e xpr принимает не пустое значение. |
MAX([D1STINCT|ALL] e xpr) | Максимальное значение выражения e хрr. |
MIN((DISTINCT|ALL] e xpr) | Минимальное значение выражения e хрr. |
STDDEV([DISTINCT|ALL] n) | Стандартное отклонение величины л, нулевые значения опускаются. |
SUM([DISTINCT|ALL] n) | Сумма значений n |
VARIANCE([DIST1NCTIALL]n) | Дисперсия величины п, нулевые значения опускаются. |
Функция | Возвращаемое значение |
ADD-MONTHS (d,n) | Дата d плюс n месяцев. |
LAST-DAY (d) | Последнее число месяца, указанного в d |
MONTHS-BETWEEN (d,e) | Число месяцев между датами d1 и d 2. |
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) | Преобразует многобайтовые символы, имеющие однобайтовые эквиваленты, в соответствующие однобайтовые символы |