Here Iam using NativeQuery to perform selecting lookuptype using subquery this is working right but I want to use Criteria Builder how i can use
Query query = em.createNativeQuery("SELECT * FROM LOOKUPMASTER WHERE PARENTLOOKUPTYPEID = (SELECT LOOKUPID FROM LOOKUPMASTER WHERE LOOKUPTYPE =? ) ", Lookupmaster.class);
query.setParameter(1, lookUpType);
I tried to write the above query using criteria builder but i am getting different result here is my criteria query
`CriteriaBuilder cb =em.getCriteriaBuilder();
CriteriaQuery cq=cb.createQuery(Lookupmaster.class);
Root<Lookupmaster> rt=cq.from(Lookupmaster.class);
Path<Object> path = rt.get("parentlookuptypeid");
cq.select(rt);
Subquery<Lookupmaster> subquery = cq.subquery(Lookupmaster.class);
Root rt1 = subquery.from(Lookupmaster.class);
subquery.select(rt1.get("lookupid"));
subquery.where(cb.equal(rt.get("lookuptype"),lookUpType));
cq.where(cb.in(path).value(subquery));
Query qry =em.createQuery(cq)`