HQL左连接,其中left为null

时间:2011-03-22 15:40:07

标签: nhibernate nhibernate-mapping hql

如何在HQL上编写此查询:

select pp.* 
from Part pp
 left join Product p on pp.ProductID = p.ID
where p.ID is null

我需要没有产品的零件。部分具有属性产品(多对一)

我试过

from Part p 
where p.Product is null

但它会生成无效查询。

由于

2 个答案:

答案 0 :(得分:3)

已解决:

from Part p 
where not exists (from Product pr where p.Product = pr)

<强>更新: 这就像在SQL上一样!

from Part p 
   left join p.Product as pr
where pr is null

答案 1 :(得分:0)

from Part p
where p.Product.Id is null

应该有效 虽然您的查询也应该有效。你得到的生成的查询是什么?