I have using hibernate 3.
Problem is left join works if I have a simple query, but not in a nested query.
If I have a nested query:
select ... where i.id in(Select ... From Parent p left join p.children as c ....). In the debug log, the actual JDBC query is just ... From Parent p, Children c, there is no left join.
But if I try the simple query as following, it works:
select count(*) from Parent p left join p.children as c where ...,
then in the debug log, I see the actual query is Parent p left outer join Children c on p.id = children.parent_id. This is what I want.
I tried to set max_fetch_depth to 3, tried to setSession criteria for that parent, children relationship to FetchMode.JOIN.
I don't know what else I can do. Please help. Thanks!!!!
|