2012-05-11 17 views
0
select T.Id, count(Th.ampount) 
from TH, T 
where Th.Tid= T.id 
group by T.Id 

流暢なnhibernateを使用して上記のクエリを書く方法。私はCreateSQLQuery()を使用したくありません。流暢なnhibernateの集計クエリ

+0

Fluent NHibernateはマッピングツールであり、クエリメカニズムはHQL、ICriteria、QueryOverまたはQueryになります。あなたはどちらを好みますか? – Rippo

+0

QueryOverまたはIcriteria – user1147738

+0

投稿の回答が見つかりました: http://stackoverflow.com/questions/10399448/nhibernate-aggregate-query-for-one-to-many-relation – user1147738

答えて

-1
session.QueryOver<TH>() 
    .JoinAlias(th => th.Ts,() => tAlias) 
    .SelectList(list => list 
     .SelectGroup(th => th.Id) 
     .SelectCount(() => tAlias.amount) 
     // or did you mean 
     .SelectSum(() => tAlias.amount) 
    ) 
    .List<object[]>(); 
関連する問題