Поделиться через


LEGACY_TIME_PARSER_POLICY

Область применения:флажок Databricks SQL

Параметр конфигурации LEGACY_TIME_PARSER_POLICY управляет анализом и форматированием дат и меток времени, а также обработкой дат до 15 октября 1582 г.

Databricks SQL использует форматирование, определенное в шаблонах Datetime, для сопоставления строк даты и времени с значениями datetime. После установки значения даты и времени его необходимо сверить с календарем.

Этот параметр можно задать на уровне сеанса с помощью инструкции SET и на глобальном уровне с помощью параметров конфигурации SQL или API хранилища SQL.

Настройки

Поддерживается три параметра:

  • LEGACY

    Если задано LEGACY, лишние поля в строковых значениях, превышающих указанный шаблон, принимаются. Используемый календарь — гибрид юлианского и григорианского календарей.

  • CORRECTED

    Если задано CORRECTED, строковое значение должно точно совпадать со строкой формата. Используется пролептический григорианский календарь.

  • EXCEPTION

    Если задано EXCEPTION, Databricks SQL вызывает ошибку всякий раз, когда результаты LEGACY и CORRECTED различаются.

По умолчанию

Системное значение по умолчанию для этого параметра — CORRECTED.

Примеры

> SET legacy_time_parser_policy = legacy;
> SELECT to_timestamp('2021-01-01 12:34:56', 'yyyy-MM-dd');
  2021-01-01 00:00:00

> SET legacy_time_parser_policy = corrected;
> SELECT to_timestamp('2021-01-01 12:34:56', 'yyyy-MM-dd');
  Text '2021-01-01 12:34:56' could not be parsed, unparsed text found at index 10