Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:
Databricks Runtime 18.1 и выше
Если expr строка является строкой, анализирует ее TIMESTAMP в соответствии с первым соответствующим шаблоном в указанном списке форматов или возвращается NULL , если шаблон не соответствует. Если expr является числовым типом, он анализируется как метка времени Unix. Недопустимый или несоединяющий expr возвращается NULL вместо возникновения ошибки.
Синтаксис
try_parse_timestamp(expr [, { pattern [...] } ])
Аргументы
-
expr: строковое или числовое значение для синтаксического анализа
TIMESTAMP. Допустимые типы:-
TINYINT, ,SMALLINTINTBIGINT -
FLOAT,DOUBLE -
DECIMAL(до 18 точности) STRING
-
-
шаблон: необязательный список шаблонов меток времени или ссылка на предопределенный список, например
#iso8601или#rfc3339. Шаблон метки времени должен быть константной строкой. Если шаблон не указан, он эквивалентен указанию#extended. Справочник по символам шаблона и список предопределенных списков шаблонов см. в разделе "Ссылка на шаблон " вparse_timestampфункции.
Возвраты
A TIMESTAMPили NULL если expr не удается проанализировать.
expr Если строка и ни одна из шаблонов не совпадает, функция возвращаетсяNULL.
expr Если числовое значение и не может быть интерпретировано как допустимая метка времени Unix (например, переполнение), функция возвращаетсяNULL.
Если параметр формата неправильно сформирован (недопустимый шаблон или список неизвестных шаблонов), функция по-прежнему вызывает ошибку; только ошибки синтаксического анализа возвращаемого exprNULLзначения.
Если expr есть NULL, функция возвращается NULL.
Примечания
- Если список шаблонов
NULLсодержит значения, они игнорируются. Если указаны все предоставленные шаблоны, результатом являетсяNULLNULL. - Если метка времени соответствует шаблону без сведений о часовом поясе, он анализируется в часовом поясе сеанса.
Условия ошибок
Примеры
-- Parse timestamp according to default pattern list
> SELECT try_parse_timestamp('2024-12-09T19:30:01');
2024-12-09 19:30:01.000
-- Invalid date returns NULL
> SELECT try_parse_timestamp('2016-12-32');
NULL
-- Bad input returns NULL instead of error
> SELECT try_parse_timestamp('bad input');
NULL
-- Invalid pattern still raises an error (does not return NULL)
> SELECT try_parse_timestamp('2023', 'QQQQ');
Error: INVALID_PARAMETER_VALUE.PATTERN
-- Extend the default pattern list with custom patterns
> SELECT try_parse_timestamp(col, "#extended", "dd MMM, yyyy", "MMM d; yy") FROM VALUES ('2024-12-01'), ('02 Dec, 2024'), ('DEC 3; 24') AS t(col)
2024-12-01 00:00:00.000
2024-12-02 00:00:00.000
2024-12-03 00:00:00.000