当前位置: 首页 > 知识库问答 >
问题:

Spark sql Unix时间戳返回错误的输出[重复]

松和泰
2023-03-14

下面的查询返回2017-02-23 00:45:00而不是12:45

spark.sql("select from_unixtime(unix_timestamp(('2017-02-23 12:45:00')," +
          "'yyyy-MM-dd hh:mm:ss'))").show(false)

但下面的查询正在返回预期的输出

2017-02-23 13:45:00代码

scala prettyprint-override">spark.sql("select from_unixtime(unix_timestamp(('2017-02-23 13:45:00')," +
          "'yyyy-MM-dd hh:mm:ss'))").show(false)

有人能帮忙吗?

共有1个答案

邵刚洁
2023-03-14

您应该使用大写h作为HH: mm: ss

spark.sql("select from_unixtime(unix_timestamp(('2017-02-23 12:45:00'),'yyyy-MM-dd HH:mm:ss')) AS date").show(false)

这应该能给你

+-------------------+
|date               |
+-------------------+
|2017-02-23 12:45:00|
+-------------------+

您可以在此处获得更多信息

 类似资料:
  • 我有以下应该返回时间戳的函数。当使用以下斜杠以字符串格式输入日期时,此代码有效:“2019/3/4”,但在使用 怎么回事?

  • 问题内容: 我正在尝试使用获取Swift中的当前日期。创建断点并停止应用程序时,我发现设备的系统时间相差3个小时。应用程序正在真实的iPhone上运行。如何解决这个问题? 我还确保在App Delegate中编写以下内容: 但这仍然行不通。 问题答案: 它不会返回错误的时间。它返回正确的时间。NSDate没有任何时区信息。现在,当我们调用NSDate()时,我的计算机和您的计算机将报告完全相同的时

  • 问题内容: 我正在尝试获取传出数据包的准确时间戳(使用原始套接字发送)。根据,“对于发送时间戳,传出的数据包将被附加到发送时间戳上并循环回套接字的错误队列。可以使用recvmsg(flags = MSG_ERRQUEUE)进行接收。” 不幸的是,在原始套接字上调用时总是返回(用和设置为with 来创建)。我究竟做错了什么?是否有更好的方法来获取传出数据包的准确时间戳? 附录(信息): 我还尝试从通

  • 我是JS的学生。我有一段代码返回了一个错误。 这是返回的语法错误。你们能解释一下我做错了什么吗?

  • 我正在尝试加载一个CVS,其中包含一个数据类型为“timestamp”的字段当我尝试将该数据加载到表中时,会出现以下错误: 谷歌。应用程序编程接口。果心例外情况。BadRequest:400 CSV表遇到太多错误,放弃。行:1;错误:1。 我知道这一列是问题所在,因为当我删除这一列时,数据上传不会出错。我应该如何上传时间戳。 我正在使用bigquery API,python客户端库。 我的数据如下