使用 HSQLDB 比较 Openoffice 数据库中的日期

Posted

技术标签:

【中文标题】使用 HSQLDB 比较 Openoffice 数据库中的日期【英文标题】:Comparing Dates in Openoffice Database with HSQLDB 【发布时间】:2010-07-21 16:00:57 【问题描述】:

我在 Openoffice 数据库中有一个表,其中包含两个日期列。我正在尝试创建一个视图,该视图将聚合这些列中的所有行,并在几分钟内总结出这两列之间的差异。

这很简单,在 Postgres 中它看起来像:

SELECT SUM(EndDate-BeginDate) AS total_minutes FROM mytable

HSQLDB 中的等效语法是什么?我找不到太多关于它们的日期函数的文档,而且我熟悉的所有“标准”方法都会返回语法错误。

【问题讨论】:

【参考方案1】:

这与 HSQLDB 2.0 中的语法类似

SELECT SUM((EndDate-BeginDate) MINUTE) AS total_minutes FROM mytable

在 OpenOffice 中使用的 HSQLDB 1.8.x 中,尝试 HSQLDB 指南中记录的 DATEDIFF() 函数

【讨论】:

谢谢。 HSQL 是否支持组合日期和时间类型以对日期时间类型进行类似的比较? HSQLDB 支持 DATE、TIME 和 TIMESTAMP。每种类型的值都可以相互比较。 DATE 值可以转换为 TIMESTAMP 进行比较。在 2.0 中,有一个函数可以将 DATE 和 TIME 值组合成一个 TIMESTAMP。 2.0 文档中广泛涵盖了日期/时间函数。顺便说一句,您可以将 2.0 版用作带有 OOo 的外部数据库。

以上是关于使用 HSQLDB 比较 Openoffice 数据库中的日期的主要内容,如果未能解决你的问题,请参考以下文章

HSQLDB 如果不存在则插入,如果存在则更新

比较 hsqldb 和 mysql

比较 hsqldb 中的两个表

OpenOffice 比较两个单元格字符串

计算单元格中的字符数 (OpenOffice Writer)

OpenOffice Calc - 用于比较的复杂公式