【发布时间】:2020-09-08 16:20:52
【问题描述】:
我正在尝试使用 to_timestamp 将带有时区的日期时间字符串转换为时间戳。
示例数据框:
df = spark.createDataFrame([("a", '2020-09-08 14:00:00.917+02:00'),
("b", '2020-09-08 14:00:00.900+01:00')],
["Col1", "date_time"])
我的尝试(使用时区说明符 Z):
df = df.withColumn("timestamp",f.to_timestamp(df.date_time, "yyyy-MM-dd HH:mm:ss.SSSZ"))
df.select('timestamp').show()
实际结果:
+---------+
|timestamp|
+---------+
| null|
| null|
+---------+
想要的结果(其中时间戳是时间戳类型):
+-------------------------+
| timestamp|
+-------------------------+
|2020-09-08 14:00:00+02:00|
|2020-09-08 14:00:00+01:00|
+-------------------------+
我也尝试了许多其他版本的格式,但我似乎找不到合适的。
【问题讨论】:
标签: python-3.x pyspark apache-spark-sql