【发布时间】:2016-09-08 07:18:12
【问题描述】:
我正在尝试编写类似于
的查询select * from Table a
where a.parent_id in
(select b.id from Table b
where b.state_cd = ?
and rownum < 100)
使用Criteria API。我可以使用与https://stackoverflow.com/a/4668015/597419 类似的代码来实现对子查询没有rownum 限制的查询,但我似乎无法弄清楚如何对Subquery 施加限制
【问题讨论】:
-
如果你不知道如何限制子查询,那么使用连接怎么样?
-
@Traubenfuchs 查询中应该有超过 100 个结果。将子查询视为父记录,而我希望将结果作为子查询返回。有些父母有多个孩子。我不知道如何使用联接为前 100 位父母找到孩子。
-
where 子句是动态的,通常多于表中的前 X 行。我应该在问题中提到这一点。
-
可以用自己自定义的表达式接口实现docs.oracle.com/javaee/7/api/javax/persistence/criteria/…
标签: java jpa-2.0 criteria-api