当前位置: 首页 > 面试题库 >

在Postgresql中将时间存储在24:00:00以上的最佳方法?

万俟修诚
2023-03-14
问题内容

我正在将GTFS提要存储到SQL数据库中,并且预计某些时间会存储在时间值上限24:00:00之上。例如,某些火车在上午12:30开行,但列出了前几天的服务,在GTFS规范中,该行车时间被存储为24:30。

解决这个问题的最佳方法是什么?我应该将其存储为字符串吗?


问题答案:

建议为此使用int …您的值可能是:

Sec + Min * 60 + Hour * 3600

对于24:30:00,您将获得88200。

从数据库加载值时,可以通过简单的数学方程式反转值:

Hour = int(value / 3600)
Min  = int(value % 3600 / 60)
Sec  = value % 3600 % 1800


 类似资料:
  • 问题内容: 我在用Java重置小时数时遇到问题。对于给定的日期,我要将小时设置为00:00:00。 这是我的代码: 问题是,有时时间是,有时是时间,当我查询数据库中保存的实体以及查询的实际实体时间(存储的实际时间)失败时。 我知道! 我正在使用AppEngine。这是Appengine错误,问题还是其他问题?还是取决于其他因素? 问题答案: 使用另一个常数代替,使用。 使用0-11(与AM / P

  • 问题内容: 我最近接手了一个十年前创建的旧项目。它使用MySQL 5.1。 除其他外,我需要将默认字符集从latin1更改为utf8。 例如,我有这样的表: 我设置了自己的Mac来进行此工作。不用考虑太多,我运行了“ brew install mysql”,它安装了MySQL 5.7。所以我有一些版本冲突。 我下载了此数据库的副本并将其导入。 如果我尝试运行这样的查询: 我收到此错误: 我以为可以

  • 问题内容: 我需要在数据库上更改一些值。 我忘记为表格设置可空值,并且默认情况下将其设置为0000-00-00 00:00:00。 现在,我需要将该值转换为。 字段类型为“日期时间”。 我该怎么做? 我尝试使用典型的方法,但是它不起作用。 问题答案: 您首先需要将该列设置为可空: 然后更新值:

  • 我有一个问题,在转换java.time.即时java.util.日期: 给出输出: 为什么日期时间是02:00:00?以及如何与时间00:00:00进行转换

  • 问题内容: 字段定义 二传手 有谁知道如何将“零日期”转换为适当的值?因为我有错误: 即使我像这样设置“默认”字段和设置器: 我仍然会有同样的问题。 问题答案: 在这里,我将大胆猜测您正在使用MySQL :-)它使用“零日期”作为特殊占位符 -不幸的是,JDBC默认情况下无法处理它们。 解决方案是将“ zeroDateTimeBehavior = convertToNull”指定为MySQL连接的

  • 问题内容: 字段定义 二传手 有谁知道如何将“零日期”转换为适当的值?因为我有错误: 即使我像这样设置“默认”字段和设置器: 我仍然会有同样的问题。 问题答案: 在这里,我将做出一个疯狂的猜测,即您正在使用MySQL :-)它使用“零日期”作为特殊的占位符 -不幸的是,默认情况下JDBC无法处理它们。 解决方案是将“ zeroDateTimeBehavior = convertToNull”指定为