0
와 나는 조건 행의 수를 선택해야합니다NHibernate에 QueryOver - .SelectCount() 술어
쿼리가 풀 카운트를 수집 :
var searchs = searchQuery.SelectList
(list => list
.SelectGroup(order => order.Id).WithAlias(() => groupResult.GlobalId)
.SelectCount(() => _transaction.ReturnStatus).WithAlias(() => groupResult.DeclineCount)
)
I (201)에 해당 트랜잭션의 수를해야합니다. 다음과 같은 내용 :
.SelectCount(() => _transaction.ReturnStatus == 201).WithAlias(() => groupResult.DeclineCount) //runtime error
미리 감사드립니다.
PS : 원래 SQL 쿼리 :
SELECT TOP 100
globalOrd.ID AS GlobalId ,
SUM(CASE WHEN transact.returnStatus = 201 THEN 1
ELSE 0
END) AS DeclineCount
FROM Orders.Global globalOrd
INNER JOIN Orders.TransactionDetail transactDet ON globalOrd.ID = transactDet.DetailID
INNER JOIN Orders.[Transaction] transact ON transactDet.TransactionID = transact.ID
GROUP BY globalOrd.ID
답변 해 주셔서 감사합니다. 둘 다 필요합니다. 원래 SQL로 질문을 업데이트했습니다. 나는 여전히 SqlProjection없이 그것을 할 것이라고 믿는다. - 그것은 매우 간단한 조작과 질의 오버런 인 것처럼 보인다. –