2011-09-21 130 views
0

我(簡化)域模型包含客戶和產品之間的許多一對多的關係,所謂的所有權。我想編寫一個NHibernate HQL查詢,該查詢符合擁有每個產品的客戶數量(在特定條件下)。請注意,客戶可以多次擁有給定的產品,但這隻能算作該產品的「投票」。NHibernate的HQL子查詢問題

這樣做的SQL是很容易的:

select ProductID, count(*) 
from (
    select distinct CustomerID, ProductID 
    from Ownership 
    where ... 
) tbl 
group by ProductID 

不幸的是,HQL不支持子查詢的from子句。我如何在HQL中表達這個查詢?

回答

1
select ProductID, count(distinct CustomerID) 
from Ownership 
group by ProductID 

感謝傑森Meckley