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


try_to_timestamp

col Анализирует метку времени с format помощью метки времени. Функция всегда возвращает значение NULL для недопустимых входных данных с включенным режимом ANSI SQL или без нее. Тип данных результата соответствует значению конфигурации spark.sql.timestampType.

Для соответствующей функции Databricks SQL смотрите функцию try_to_timestamp.

Синтаксис

from pyspark.databricks.sql import functions as dbf

dbf.try_to_timestamp(col=<col>, format=<format>)

Параметры

Параметр Тип Description
col pyspark.sql.Column или str значения столбцов для преобразования.
format literal string, optional формат, используемый для преобразования значений метки времени.

Примеры

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('1997-02-28 10:30:00',)], ['t'])
df.select(dbf.try_to_timestamp(df.t)).show()
df = spark.createDataFrame([('1997-02-28 10:30:00',)], ['t'])
df.select(dbf.try_to_timestamp(df.t, dbf.lit('yyyy-MM-dd HH:mm:ss'))).show()
origin = spark.conf.get("spark.sql.ansi.enabled")
spark.conf.set("spark.sql.ansi.enabled", "true")
try:
df = spark.createDataFrame([('malformed',)], ['t'])
df.select(dbf.try_to_timestamp(df.t)).show()
finally:
spark.conf.set("spark.sql.ansi.enabled", origin)