我的(简化)域模型包含一个多对多关系,称为客户和产品之间的所有权。我想写一个NHibernate HQL查询,该查询统计拥有每个产品的客户数量(在某些标准下)。请注意,客户可以多次拥有一个给定的产品,但这只应算作该产品的一个“投票”。
这方面的SQL很简单:
select ProductID, count(*)
from (
select distinct CustomerID, ProductID
from Ownership
where ...
) tbl
group by ProductID
不幸的是,HQL不支持from
子句中的子查询。如何在HQL中表达此查询?
答案 0 :(得分:1)
select ProductID, count(distinct CustomerID)
from Ownership
group by ProductID
归功于Jason Meckley