Snowsql двузначный век дата начала выпуска литой

Я хочу результат 2000-02-05 с запросом ниже в snowsql.

alter session set  TWO_DIGIT_CENTURY_START=2000;
select cast ('05-FEB-00' as date) from dual;

Но я получаю 0001-02-05, Я использую существующий скрипт для загрузки даты в снежинку, которая работает для оракула. Я знаю, что могу получить ожидаемый результат, используя функцию to_date, но я не хочу этого делать. Если мне нужно, то я должен изменить многие места в сценарии, что является беспокойным.

Я хочу решение, используя функцию приведения. Кто-нибудь знает, что здесь происходит?

1 ответ

Решение

Сначала необходимо указать формат даты, отличный от заданного по умолчанию, для ваших входных данных. В случае примера выше:

alter session set date_input_format = 'DD-MON-YY';

затем

alter session set  TWO_DIGIT_CENTURY_START=2000;
select cast ('05-FEB-00' as date) from dual;

выходы:

2000-02-05

Другие вопросы по тегам