hibernate createalias为内连接添加“Or”条件

时间:2012-09-27 16:04:33

标签: hibernate join criteria alias conditional-statements

我想使用hibernate条件和createAlias这样的查询:

选择
  table1 “any_field” 从   table1上的table2内部加入table1field1 = table2field1table1field2 = table2 .field1

其中.....

主要问题是我无法在内连接中添加“OR”条件,所有限制和我应用的内容总是变为“AND”。

1 个答案:

答案 0 :(得分:0)

当然效率不高:

session.createCriteria(T2.class, "t2")
    .add(Restriction.or(
        Subquery.exists(DetachedCriteria.for(T1.class).add(Restrictions.eqProperty("field1", "t2.field1")),
        Subquery.exists(DetachedCriteria.for(T1.class).add(Restrictions.eqProperty("field2", "t2.field1")))
    .list();