如何使用JPA Criteria编写以下MySQL查询?
select * from deptors where customerId in
(select customerId from address where zipcode="12345-6789")
and gender="male";
我已阅读http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Basic_JPA_Development/Querying/Criteria#Subquery和许多stackoverflow线程,包括JPA 2.0, Criteria API, Subqueries, In Expressions。但我只是没有得到它。谢谢你的帮助。
答案 0 :(得分:0)
类似的东西:
CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Deptors> cq = cb.createQuery(Deptors.class);
Root<Deptors> c = cq.from(Deptors.class);
Subquery<Address> subquery = cq.subquery(Address.class);
Root<Address> a = subquery.from(Address.class);
但我宁愿建议使用JPQL构建此查询和/或将其作为NamedQuery外部化到您的实体中。
塞巴斯蒂安