Oracle: to_date()

>Буквально пару дней назад потребовалось использоваться расширенные возможности функции TO_DATE(). В моем случае задача ставилась следующей:
Входным параметром является дата в формате день-месяц-год (dd-mm-yyyy)
Вернуть нужно в формате День недели, число Месяц год (Dy, dd Mon yyyy).
Дело в том, что название дня недели (напр. Sunday) Dy зависит от региональных настроек оракла. Соответственно полагаться на правильные установки не приходится. Вот здесь приходит на помощь доп параметры, так называемые NLS Params.
Для парсинга pubDate в RSS мне понребовался NLS_DATE_LANGUAGE равным ‘american’.

Результат:

1
to_date(:p_date,'Dy, dd Mon yyyy hh24:mi:ss', 'NLS_DATE_LANGUAGE = ''american'' ')

Примечательно, что третий параметр TO_DATE() заключается в кавычки, а если нужно указать кавычки в кавычках, то употребляют две одинарные кавычки.

Ссылки по теме:
Оракловый FAQ по NSL_LANG

One thought on “Oracle: to_date()

  1. >По поводу двух одинарных кавычек: они используются везде, когда в переменную нужно записать текст, содержащий одинарные кавычки.

Leave a Reply

Your email address will not be published. Required fields are marked *


6 - три =