次のような JPQL クエリを記述することは可能ですか?
select count(*) > 0 from Scenario scen where scen.name = :name
エンティティ入力基準が存在するかどうかに応じて true/false のブール値を返すものはありますか?
クエリを次のように使用したいと思います:
boolean exists = entityManager.createQuery(query,Boolean.class).setParameter("name",name).getSingleResult();
私の例のクエリは構文的に正しくありません (解析エラー)。しかし、JPQL でそのようなチェックを実行してブール値を返す正しい方法はありますか。それとも、Java コードでのみ可能ですか。
ベストアンサー1
はい、次の方法で可能です:
select case when (count(scen) > 0) then true else false end
from Scenario scen where scen.name = :name