java - 在 apache spark 中使用 current_timestamp 获取正确的时区偏移量
问题描述
我是 Java 和 Apache spark 的新手,并试图了解时间戳和时区的使用。我希望从我从 apache spark DF 获得的数据中将所有时间戳存储在 SQL Server 的 EST 时区中。
当我使用 current_timestamp 时,我得到了正确的 EST 时间,但是当我查看数据时得到的偏移量是“+00:00”而不是“-04:00”。
这是一个存储在数据库中的值,它是从 spark 数据集中传入的:
2020-04-07 11:36:23.0220 +00:00
从我所看到的 current_timestamp 不接受任何时区。此外,时间是正确的(它在 EST 中),但我不明白为什么偏移量是错误的。
任何帮助理解这一点都会很棒。
解决方案
我将 UTC 默认值转换为 Localtimezone 如下
current_timestamp1 = current_timestamp(),
current_timestamp2 = from_utc_timestamp(current_timestamp, "Australia/Sydney")
推荐阅读
- python - 如何将 webdriver 类型代码作为整数
- css - 部署后 Vuejs CSS 不起作用,即使它被渲染到 DOM
- spring-boot - 在 Spring Boot 中将多部分文件转换为字符串失败
- php - 此页面无法正常工作 localhost 将您重定向了太多次。当我创建一个中间件来检查登录身份验证时
- c# - 在运行空间中导入或加载模块,仍然“连接 AzureRMAccount”抛出“命令未被识别为 cmdlet..”
- c++ - 声明全局动态数组时出错
- spring-data-jpa - 我们可以在 JPA 查询中同时使用 HINT_FETCH_SIZE 和 Pageable
- javascript - 使用sails js的图像没有显示在html页面上
- bash - 回显消息后在同一行上回显脚本
- adobe-brackets - 为什么括号语法语言不断将 JSX 更改为 JS?