获取一个字段有多个值的实体(Hibernate)

时间:2014-10-31 07:54:07

标签: hibernate

表。我想获得firm_id = 1和firm_id = 2(非OR)的用户 user_id | firm_id
-----------------
1 | 1
2 | 1
1 | 2

在SQL上它将是:SELECT user_id FROM table WHERE firm_id IN (1,2) GROUP BY user_id HAVING COUNT(user_id)=2

1 个答案:

答案 0 :(得分:0)

因此,如果您将Hibernate与Criterion或Criteria Api一起使用,您也可以使用限制接口。

List users = sess.createCriteria(User.class)
.add( Restrictions.and(
    Restrictions.eq( "firm_id", 1 ),
    Restrictions.eq( "firm_id", 2 )
) ).list();

另见文件: https://docs.jboss.org/hibernate/orm/3.5/api/org/hibernate/Criteria.html https://docs.jboss.org/hibernate/orm/3.3/reference/en/html/querycriteria.html