我期待科大总是比科技委提前6小时。显然火花不同意。
spark.sql("""select to_utc_timestamp('2022-02-26 17:35:36', "CST") """).show()
+-------------------+
| time|
+-------------------+
|2022-02-26 23:35:36|
+-------------------+
spark.sql("""select to_utc_timestamp('2021-08-26 17:35:36', "CST") """).show()
+-------------------+
| time|
+-------------------+
|2021-08-26 22:35:36|
+-------------------+
是否有一些文档确切地解释了如何计算哪个时区?我只能找到功能文档。
发布于 2022-06-17 18:42:34
一般来说,要准确理解Spark函数是如何工作的,最好的方法是从org.apache.spark.sql.functions开始挖掘源代码,然后跟踪面包屑,直到最终得到这里,这将向您展示Spark使用的是底层的标准java.time.*类。
然而,这对你的情况没有帮助,因为问题在于你的假设。Java的TimeZone
尊重夏时制,这将给您提供不同的偏移量,这取决于您给它的DateTime
。你可以自己提供一个固定的偏移量。
spark.sql("""select to_utc_timestamp('2022-02-26 17:35:36', "-0600") """).show()
但在这种情况下,我不知道有什么方法可以自动忽略日光节约。
https://stackoverflow.com/questions/72662264
复制相似问题