JPAクエリでCURRENT_DATE
を使用する方法の例を誰かに教えてもらえますか?
CURRENT_DATE
はJPAで指定されていますが、動作させることができませんでした。常にunexpected token [CURRENT_DATE]
例外が発生します。 JPAで指定されているため、すべてのプロバイダーがこれに準拠する必要がありますか?
私はEclipseLink2.0BTWを使用しています。
それは次のように使用できます:
Query query = manager
.createQuery("SELECT c FROM CITIES c WHERE c.founded = CURRENT_DATE");
for (Object city : query.getResultList()) {
System.out.println(city);
}
...ここでfoundedは一時的なタイプです:
@Column(name = "FOUNDED")
@Temporal(TemporalType.DATE)
private Date founded = new Date();
良い例ではありませんが、あなたはその考えを理解します。私はEclipselink 1.1.2を使用しています
この質問に対する答えは、JPAを介して値を取得し、プレーンJavaで計算を行うことでした。
Expression Framework を使用している場合、Expression
(_org.Eclipse.persistence.expressions.Expression
_)オブジェクトにExpression currentDateDate()
メソッドがあります。