【发布时间】:2018-02-21 20:45:39
【问题描述】:
我正在研究 Pyspark。
我有一个专栏end_date,我想做一些工作。但我不能因为他的类型:OffsetDateTimeUdt。
这个类型可以转换成日期或字符串吗?
取值示例:2021-08-15T00:00:00.000Z
如果你有任何想法,请告诉我:)
提前致谢
【问题讨论】:
-
你能把你试过的代码吗?
-
bio_t=bio_w.selectExpr('customer','TO_DATE(end_date) as date','operator') 我也试过 CAST
-
说了什么?
bio_t= bio_w.selectExpr('customer','CAST(TO_DATE(end_date) AS DATE) dt','operator')。你能添加错误信息吗 -
当然:由于数据类型不匹配,你“无法解析 'CAST(ri.foundry.main.dataset.bb7b7376-3e35-46c4-beb1-0cb2b3651c89.
end_dateAS DATE)':不能将 com.palantir.spark.time.OffsetDateTimeUdt@0 转换为 DateType 错误消息很长但我认为最重要的是这里 -
我建议你写一个 UDF 来将
OffsetDateTimeUdt转换为String/DateTime
标签: python sql datetime pyspark datetimeoffset