【发布时间】:2012-08-18 05:18:24
【问题描述】:
我在问自己是否可以通过 Hibernate Criteria API 映射以下查询
SELECT * FROM table_a as a LEFT OUTER JOIN table_b as b ON a.primary_key = b.foreign_key and b.any_column = 'my_value'
好的,除了and b.any_column = 'my_value' 之外的一切对我来说都不难。使用 FetchMode.JOIN 或 addCriteria(...,...)。
但是and b.any_column = 'my_value' 让人头疼。
我尝试过嵌入:
addCriteria("b", Criteria.LEFT_JOIN).add(Restriction.eq("b.any_column", my_value))
但这正在产生:
SELECT * FROM table_a as a LEFT OUTER JOIN table_b as b ON a.primary_key = b.foreign_key WHERE b.any_column = 'my_value'
这不是我的目的,当然会产生与我预期的查询不同的结果。谁能给我一个提示,我如何告诉 Hibernate 映射到所需的查询?
谢谢, 迈克尔
【问题讨论】: