TO_DATE в ГГГГММДД с ДД-ПН-ГГ

0

У меня есть данные в следующем формате даты. '27 -SEP-97 ', т.е. DD-MON-YY

Теперь я хочу преобразовать это в YYYYMMDD. Для этого я использую следующий скрипт.

TO_CHAR(TO_DATE(CHD_DATE_FIRST_ACT,'DD-MON-YY'),'YYYYMMDD') 

но это дает мне следующий результат.

20970927

Я хочу, чтобы эти данные были в формате YYYYMMDD, так что вывод выглядит как this- 19970927

  • 2
    Oracle или MySQL? Пожалуйста, пометьте только те СУБД, которые вам нужны.
  • 2
    Как база данных может узнать, что 97 означает 1997 или 2097? - Проблема 2000 года , невероятно, что эта проблема все еще существует. Я думаю, что основная причина заключается в том, что большинство современных разработчиков программного обеспечения были еще детьми, когда проблема 2000 года была самой обсуждаемой темой во всем мире ИТ.
Показать ещё 3 комментария
Теги:
database
to-date

3 ответа

4
Лучший ответ

Если "27 -SEP-97" - это строка (это то, что предлагают ваши слова), тогда такая комбинация TO_this и TO_that может выполнить эту работу:

SQL> with test as (select '27-SEP-97' datum from dual)
  2  select to_char(to_date(datum, 'dd-mon-rr', 'nls_date_language = english'), 'yyyymmdd') result
  3  from test;

RESULT
--------------------------------------------------------------------------------
19970927

SQL>
  • 0
    Это было полезно. Спасибо!
0

--USE RR вместо YY в вашем запросе.

выберите TO_CHAR (TO_DATE ('27 -SEP-97 ',' DD-MON-RR '),' YYYYMMDD ') из dual;

  • 0
    Это было полезно. Спасибо!
0

Вы можете использовать функции mysql replace и str_to_date
replace принимает 3 аргумента, как показано ниже
replace(string,find_string,replace_with)
вы должны просто заменить - пустой строкой
если ваша str является "27 -SEP-97", чтобы получить результат как 19970927 выполните следующее в mysql

select replace(str_to_date('27-SEP-97','%d-%b-%Y'),'-','') as date;
выход

+----------+
| date     |
+----------+
| 19970927 |
+----------+

%b используется для обозначения сокращенного имени месяца

щелкните приведенные ниже ссылки, чтобы узнать больше о функциях даты и времени mysql
Функции данных и времени Mysql

  • 0
    Это было полезно. Спасибо!
  • 0
    @ShubhamSharan, рад, что смог помочь

Ещё вопросы

Сообщество Overcoder
Наверх
Меню