2013-06-04 40 views
1

我正在使用2.4.1 eclipse链接和oracle。 This document列出了几个运算符,可以在编写查询时使用。也有一个例子。我想使用dateDifference函数。我在哪里可以找到使用这些运算符时要传递的参数的详细信息。一些示例代码会很好。eclipselink jpa操作符详细信息

回答

0

的API的最佳来源是在Expression类

http://www.eclipse.org/eclipselink/api/2.5/org/eclipse/persistence/expressions/Expression.html#dateDifference%28java.lang.String,%20java.util.Date%29

SELECT e FROM Employee e WHERE OPERATOR('DateDifference ', e.startDate, 'year', e.endDate) > 10 

你也可以使用SQL()操作。

+1

谢谢@詹姆斯,在这里寻求帮助。我已经准备好将你的答案标记为已接受。 'DateDifference'中的空间非常棘手,我可能永远不会想到这一点。但看起来像DateDifference需要来自数据库的支持,并且不受Oracle支持。错误是'java.sql.SQLSyntaxErrorException:ORA-00904:“DATEDIFFERENCE”:无效标识符。我的假设是否正确?或者有什么可以用来与Oracle一起使用的。 – phoneynk

+0

我会使用SQL标准的EXTRACT函数。 EclipseLink直接在JPQL中支持这个功能。 – James