0

我正在尝试执行以下 SQL:

select months_between(sc.dat_initial_period, hp.dat_signup) + 1 as months from harvest_partner hp inner join sales_commission sc on hp.idt_harvest_partner = sc.idt_harvest_partner;

针对 HSQLDB 版本:2.2.9并且我收到以下错误:

Error code -5501, SQL state 42501: user lacks privilege or object not found: MONTHS_BETWEEN

我正在通过这个 URL 创建数据库:jdbc:hsqldb:/hsql/testdb

SQL 正在由 Netbeans SQL 客户端、HSQLDB 数据库管理器甚至是纯 JDBC Java 代码执行,所有错误都发生了。

HSQLDB 文档说它有这样的功能(MONTHS_BETWEEN): http: //hsqldb.org/doc/2.0/guide/builtinfunctions-chapt.html#bfc_datetime_arithmetic

在下面的链接中说它是在 2012 年 11 月发布的一些快照:http: //comments.gmane.org/gmane.comp.java.hsqldb.user/6201

我的代码有问题,或者我缺少任何能够调用此类函数的配置?

谢谢。

4

1 回答 1

0

HSQLDB 2.3.0 支持此功能。您可以在此处获取最新快照:

http://www.hsqldb.org/repos/org/hsqldb/hsqldb/SNAPSHOT/

于 2013-04-24T15:21:56.187 回答