等效于 H2 DB 的 UNIX_TIMESTAMP 函数?

Posted

技术标签:

【中文标题】等效于 H2 DB 的 UNIX_TIMESTAMP 函数?【英文标题】:Equivalent of UNIX_TIMESTAMP function for H2 DB? 【发布时间】:2018-11-26 03:13:57 【问题描述】:

有没有人知道 mysqlUNIX_TIMESTAMP(time_val) 的 H2 的任何适当替代品,这样在 JDBC 时间戳上应用该函数会返回一个从 1970 年 1 月 1 日 00:00:00 开始的 unix 纪元?

【问题讨论】:

CURRENT_TIMESTAMP in milliseconds in h2的可能重复 【参考方案1】:
DATEDIFF('SECOND', DATE '1970-01-01', CURRENT_TIMESTAMP())

在这里回答:CURRENT_TIMESTAMP in milliseconds in h2

或在这里:https://gitlab.com/romain.rinie/h2database/issues/211

【讨论】:

我已经尝试过了,但它似乎并不准确 - 结果与实际的 Unix 时间戳之间存在微小差异。【参考方案2】:

我尝试了其他答案,但结果不准确。在另一个答案中,我得到了本地时区的时间戳(在我的情况下为 GMT+3),因此它与 Unix 时间戳(以毫秒为单位)不同。在我的回答中,我得到了 UTC 的结果。

这将为您提供正确的当前 UNIX 纪元:

SELECT EXTRACT (EPOCH from CURRENT_TIMESTAMP())

【讨论】:

虽然此代码可能会回答问题,但提供有关此代码为何和/或如何回答问题的额外上下文可提高其长期价值。 感谢您的反馈 - 我已编辑答案以提供更多上下文。

以上是关于等效于 H2 DB 的 UNIX_TIMESTAMP 函数?的主要内容,如果未能解决你的问题,请参考以下文章

将 MySql Dump 转换为 h2db 文件

PDO 等效于 mysql_num_rows 或 mssql_num_rows [重复]

SqlAlchemy 等效于使用 FreeTDS 的 pyodbc 连接字符串

将 h2 数据库从 h2.db 转换为 mv.db

查看test.h2.db(H2数据库)的工具[关闭]

检查 H2 db 文件是不是存在