私はいくつかの条件が真であるかどうかをチェックし、出力として単純なブール結果を返すクエリを実行しようとしています。少し難しいのは、一連の条件に対して結果が返されないかどうかをテストすることです。JPQLでEXISTS()を選択できますか?
私は現在、JPA-2.0をMySQLとしてサポートしている私のプロバイダとしてhibernateを使用しています。私はMySQLでうまく動作しているサンプルクエリを得ましたが、JPQLで動作させようとすると、それは破棄されます。 MySQLのクエリは、ビットのようになります。
Select exists(Select statement with criteria)
or not exists(Select statement with criteria);
私はまた、CASEを使用して同じ出力を得たが、JPQLは、その文をサポートしていないよう。
"unexpected end of subtree"
私の理解から何かがクエリに欠けていることを意味します。私はJPQLで同様のクエリを使用しようとすると、
はとにかく、私はエラーを取得します。誰にどのようにそれを修正するための任意のアイデアがありますか?
これを指摘してくれてありがとうが、括弧で囲まれているかどうかは、依然としてJPQLでは機能しません。 – Elk
はhttp://openjpa.apache.org/builds/1.2.0/apache-openjpa-1.2.0/docs/manual/jpa_langref.html#jpa_langref_existsので、マニュアルに従って、少なくとも一部が質問から正しい存在します。 "exists_expression :: = [NOT] EXISTS(サブクエリ)" – Kowser