鉴于我有一个带有集合A
的对象B
,我希望A
包含符合特定条件的所有B
"from A a left join fetch a.bs c where a.id = ? and c.id = ?"
以上肯定不会有效,所以在别名c
之后必须再次获取,这样才能正确
"from A a left join fetch a.bs c join fetch c.id = ? where a.id = ?"
答案 0 :(得分:2)
由于语法无效,第二个查询将无效。第一个会工作,但(我猜这里)不是你想要的方式。
我认为你想要选择一些As并且仅使用符合特定标准的B来填充他们的Bs集合?你不能。将为每个A实例提取所有自有B的集合(不考虑处理批量大小的技术含义)。这样做是为了防止Bs意外孤立,如果你选择用不完整的B集合来保存你的A。
如果我误解了,那不是你的意思,请澄清你的问题。