LEGACY_TIME_PARSER_POLICY
適用対象: Databricks SQL
LEGACY_TIME_PARSER_POLICY
構成パラメーターによって、日付とタイムスタンプの解析と書式設定に加え、1582 年 10 月 15 日より前の日付の処理が制御されます。
Databricks SQL では、「datetime パターン」で定義されている書式を使用して、datetime 文字列を datetime 値にマップします。 datetime 値が確立されたら、カレンダーに照らし合わせて検証する必要があります。
このパラメーターは、SET ステートメントを使用してセッション レベルで、また、SQL 構成パラメーターかSQL ウェアハウス API を使用してグローバル レベルで設定できます。
設定
次の 3 つの設定をサポートしています。
LEGACY
LEGACY
が設定されている場合、指定したパターンを超える文字列値の余分なフィールドが受け入れられます。 使用されるカレンダーは、ユリウス暦とグレゴリオ暦を合わせた暦です。CORRECTED
CORRECTED
の場合、文字列値は、書式指定文字列と完全に一致する必要があります。 使用されるカレンダーは、先発グレゴリオ暦です。EXCEPTION
EXCEPTION
の場合、Databricks SQL では、LEGACY
とCORRECTED
の結果が相違する場合にエラーが発生します。
システムの既定
このパラメーターのシステムの既定値は EXCEPTION
です。
例
> 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