Функции работы с датами
Групповые функции
| Функция | Возвращаемое значение |
| 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) | Преобразует многобайтовые символы, имеющие однобайтовые эквиваленты, в соответствующие однобайтовые символы |






