WAS v8.5 > Develop applications > Develop Dynamic and EJB query > Develop applications that use EJB query > EJB query language > WHERE clauseEXISTS predicate
The exists predicate tests for the presence or absence of a condition specified by a subselect.
Use the following syntax:
EXISTS ( subselect )
EXISTS collection-valued-path-expression
The result of EXISTS is true if the subselect returns at least one value or the path expression evaluates to a nonempty collection, otherwise the result is false.
To negate an EXISTS predicate, precede it with the logical operator NOT.
Example: EXISTS predicate
Return departments that have at least one employee earning more than 1000000:
SELECT OBJECT(d) FROM DeptBean d WHERE EXISTS ( SELECT 1 FROM IN (d.emps) e WHERE e.salary > 1000000 )Return departments that have no employees:
SELECT OBJECT(d) FROM DeptBean d WHERE NOT EXISTS ( SELECT 1 FROM IN (d.emps) e)The previous query can also be written as follows:
SELECT OBJECT(d) FROM DeptBean d WHERE NOT EXISTS d.emps
Related concepts:
EJB query language
WHERE clause
Related
Use EJB query