在Java中使用SQL DATEADD函数 [英] Using sql DATEADD function in java
本文介绍了在Java中使用SQL DATEADD函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
当我使用DATEADD运行查询时,数据库似乎无法识别此功能。
也在我刚运行时选择DATEADD(Month,-3,GETDATE())
我得到:
When I run queries using DATEADD it seems that the database does not recognize this function.
also when I just run select DATEADD(Month, -3, GETDATE())
I'm getting:
Error code -1, SQL state 42X01: Syntax error: Encountered "<EOF>" at line 1, column 36.
我尽可能地从hsqldb-2.2.9添加了JAR文件参见
I added the JAR file from hsqldb-2.2.9 as you can see
我在这里缺少什么?
推荐答案
Derby没有DATEADD函数。您需要使用 JDBC函数 timestampadd
来实现:
Derby does not have a DATEADD function. You need to use the JDBC function timestampadd
to achieve this:
select {fn TIMESTAMPADD(SQL_TSI_MONTH, -3, CURRENT_TIMESTAMP)}
from sysibm.sysdummy1
使用sysdummy1的替代方法是ANSI标准 values
子句在Derby和HSQLDB中均适用:
An alternative to using sysdummy1 is the ANSI standard values
clause which works both in Derby and HSQLDB:
values ({fn TIMESTAMPADD(SQL_TSI_MONTH, -3, CURRENT_TIMESTAMP)})
这篇关于在Java中使用SQL DATEADD函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文