8

休止状態の基準 API を使用して「select in」クエリを作成することは可能ですか?

例 : 会社と部門の 1:n 関係にある 2 つのテーブルがあります。

select * from company c where c.id in (select company_id from department d 
where d.departmentname = 'HR' and d.location = 'xyz')
4

1 に答える 1

14

この DetachedCriteria に使用できます

DetachedCriteria subCriteria= DetachedCriteria.forClass(Departament.class);
     subCriteria.add(Property.forName("departmentname ").eq("HR"));
     subCriteria.add(Property.forName("location ").eq("xyz"));
     subCriteria.setProjection(Projections.property("company_id "));

DetachedCriteria criteria = DetachedCriteria.forClass(Company.class);
     criteria.add(Property.forName("id").in(subCriteria));
于 2010-11-04T13:48:21.383 に答える