1
작동하지 않습니다 다음 LINQ 쿼리 :조건부 행 개수 내가 NHibernate에 Linq에로 간단한 SQL 쿼리 다음 번역 할
var hitsPerNews = (from n in Session.Query<UserNews>()
group n by n.News.NewsId into g
select new { NewsId = g.Key, HitsNumber = g.Sum(x => x.UserHits),
VisitorsNumber = g.Count(x => x.UserHits > 0) }).ToList();
그러나 생성 된 SQL 내 x => x.UserHits > 0
문을 무시 불필요한 '왼쪽 외부 결합'을 만듭니다.
SELECT news1_.NewsId AS col_0_0_,
CAST(SUM(news0_.UserHits) AS INT) AS col_1_0_,
CAST(COUNT(*) AS INT) AS col_2_0_
FROM UserNews news0_
LEFT OUTER JOIN News news1_
ON news0_.NewsId=news1_.NewsId
GROUP BY news1_.NewsId
어떻게 해결할 수 있습니까? QueryOver 구문을 사용하면 더 효과적 일 수 있습니까?
나는 마침내 내 질문에 대한 답을 찾을