【发布时间】:2012-02-18 19:02:39
【问题描述】:
有一个类Offer 与类Article 具有可选 关系。这样一些 offer 文章属性就持有一个null 值。
如果我使用以下语句,一切正常。我得到了所有的报价,即使是那些没有文章的。
SELECT o FROM Offer o
LEFT OUTER JOIN o.article a
LEFT OUTER JOIN o.vendor v
WHERE v.number = '0212' OR a.nummer = '123456'
如果我将语句更改为:
SELECT o FROM Offer o
LEFT OUTER JOIN o.article a
LEFT OUTER JOIN o.vendor v
WHERE v.number = '0212' OR o.article.nummer = '123456'
我只收到了与NULL 不同的文章。这是因为隐式连接 (o.article.nummer) 的表示法强制进行内部连接。
是否有可能强制左外连接到隐式连接(注释驱动或其他)?如果有机会我可以使用这样的简短形式:
SELECT o FROM Offer o
WHERE v.number = '0212' OR o.article.nummer = '123456'
【问题讨论】:
标签: hibernate jpa hql outer-join jql