Predicado EXISTS
El predicado exists comprueba la presencia o la ausencia de una condición especificada por una subselección.
Utilice la sintaxis siguiente:
EXISTS ( subselect )
EXISTS expresión-path-valor-agrupación
El resultado de EXISTS es true si la subselección devuelve como mínimo un valor o si la expresión path se evalúa como una agrupación que no está vacío, de lo contrario devuelve el valor false.
Para negar un predicado EXISTS, debe precederlo con el operador lógico NOT.
Ejemplo: predicado EXISTS
Devolver los departamentos que tienen como mínimo un empleado que gana más de 1000000:
SELECT OBJECT(d) FROM DeptBean d
WHERE EXISTS ( SELECT 1 FROM IN (d.emps) e WHERE e.salary > 1000000 )
Devolver los departamentos sin empleados:
SELECT OBJECT(d) FROM DeptBean d
WHERE NOT EXISTS ( SELECT 1 FROM IN (d.emps) e)
La consulta anterior se
puede escribir también del modo siguiente:
SELECT OBJECT(d) FROM DeptBean d WHERE NOT EXISTS d.emps