Oracle TO_DATE не работает - PullRequest
       4

Oracle TO_DATE не работает

2 голосов
/ 23 апреля 2011

У меня есть этот запрос, который не возвращает никаких строк. Но есть записи, которые больше даты 25 июня-90. Почему это не работает?

{SELECT employee_id, last_name,hire_date
   FROM employees WHERE hire_date > TO_DATE('25-JUN-90','dd-mon-yy');}

Ответы [ 2 ]

8 голосов
/ 23 апреля 2011

Вы хотите использовать маску формата даты RR, чтобы изменить 90 на 1990:

SELECT employee_id, last_name,hire_date
FROM employees WHERE hire_date > TO_DATE('25-JUN-90','dd-mon-RR');
2 голосов
/ 23 апреля 2011

В каком веке оно переводится как «90»? 1990 или 2090?

См. Даты и время Oracle для одного описания символов формата даты Oracle. Как показывает ответ Джеффри Кемпа , в настоящее время (в ближайшие 30 лет или около того) вы можете получить «1990» из «90», используя буквы формата «RR». Однако было бы лучше использовать 4-значные годы; кажется, что уроки Y2K уже забыты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...