與員工和下屬 - 我想在一個查詢中加載一個員工的下屬人數。如何將收集計數映射到實體與流利-Nhibernate
public class Employee
{
public Name {get;set;}
public int NumberOfSubordinates {get;set;}
}
產生的SQL應該像:
select e.name, (select count(*) from subordinate s where s.employee_id = e.id) NumberOfSubordinates
from employee e
group by e.name
order by NumberOfSubordinates desc
只需觀察一下SQL,但看起來這是獲取所需數據的不好方法,不應將子選擇替換爲從屬表上的JOIN,然後在其上計數(*)會導致相同的價值?看起來好像你正在迫使查詢計劃者通過執行上述操作來獲取低效率的路由。與你沒有太大關係是問題,但這正是我目前所需要的。 – Martin 2012-11-28 21:29:01