将日期转换为时间戳的问题,Spark 日期从 unix_timestamp 转换为时间戳返回 null

2024-01-26

将日期转换为时间戳时出现问题,Spark 日期从 unix_timestamp 转换为时间戳返回 null。

scala>  import org.apache.spark.sql.functions.unix_timestamp
scala> spark.sql("select from_unixtime(unix_timestamp(('2017-08-13 00:06:05'),'yyyy-MM-dd HH:mm:ss')) AS date").show(false)

+----+
|date|
+----+
|null|
+----+

问题是智利时间改变了,非常感谢。

+-------------------+---------+
|     DateIntermedia|TimeStamp|
+-------------------+---------+
|13-08-2017 00:01:07|     null|
|13-08-2017 00:10:33|     null|
|14-08-2016 00:28:42|     null|
|13-08-2017 00:04:43|     null|
|13-08-2017 00:33:51|     null|
|14-08-2016 00:28:08|     null|
|14-08-2016 00:15:34|     null|
|14-08-2016 00:21:04|     null|
|13-08-2017 00:34:13|     null|
+-------------------+---------+

解决办法,设置时区:

  spark.conf.set("spark.sql.session.timeZone", "UTC-6")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将日期转换为时间戳的问题,Spark 日期从 unix_timestamp 转换为时间戳返回 null 的相关文章

随机推荐