Моя (упрощенная) модель домена содержит отношение «многие ко многим», которое называется «Владение клиентом и продуктом».Я хотел бы написать запрос Hibernate NHQL, который подсчитывает количество клиентов, которым принадлежит каждый продукт (по определенным критериям).Обратите внимание, что клиент может владеть данным продуктом несколько раз, но это должно учитываться только как один «голос» за этот продукт.
SQL-запрос для этого достаточно прост:
select ProductID, count(*)
from (
select distinct CustomerID, ProductID
from Ownership
where ...
) tbl
group by ProductID
К сожалениюHQL не поддерживает подзапросы в предложении from
.Как я могу выразить этот запрос в HQL?