Estoy tratando de ejecutar una consulta que comprueba si algunas condiciones son verdaderas y devuelve un resultado booleano simple como resultado. Lo que lo hace un poco complicado es que una de las condiciones es comprobar si no se devuelven resultados para un conjunto de criterios.¿Es posible seleccionar EXISTS() en JPQL?
Actualmente estoy usando JPA-2.0 con Hibernate como el profesional, el respaldo de MySQL. Obtuve una consulta de ejemplo que funciona bien en MySQL, pero cuando intento ejecutarlo en JPQL falla. La consulta de MySQL se ve un poco como esto:
Select exists(Select statement with criteria)
or not exists(Select statement with criteria);
También me dio el mismo resultado utilizando CASO, sino como JPQL no soporta esa declaración.
De todas formas, cuando trato de utilizar una consulta similar en JPQL me sale el error:
"unexpected end of subtree"
que desde mi comprensión significa que algo falta en la consulta. ¿Alguien tiene alguna idea de cómo solucionarlo?
Gracias por señalarlo, pero la frase "corchetes" o "no" aún no funciona en JPQL. – Elk
http://openjpa.apache.org/builds/1.2.0/apache-openjpa-1.2.0/docs/manual/jpa_langref.html#jpa_langref_exists Así que de acuerdo a la documentación, al menos, existe parte es correcta a partir de la pregunta. "exists_expression :: = [NOT] EXISTS (subconsulta)" – Kowser