Mit Mitarbeitern und Untergebenen - Ich möchte einen Mitarbeiter mit der Anzahl der Untergebenen in einer Abfrage laden.So ordnen Sie die Anzahl der Auflistung einer Entität mit fluent-nhibernate zu
public class Employee
{
public Name {get;set;}
public int NumberOfSubordinates {get;set;}
}
Resultierende SQL sollte wie folgt aussehen:
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
Nur eine Beobachtung mit der SQL, aber es scheint, dass dies eine schlechte Möglichkeit ist, die Daten, die Sie benötigen, sollte die Unterauswahl nicht mit einem JOIN in der untergeordneten Tabelle ersetzt werden, dann ein Count (*) darauf würde den gleichen Wert ergeben? Es scheint, als würden Sie den Abfrageplaner zwingen, eine ineffiziente Route zu wählen, indem Sie die oben genannten Schritte ausführen. Das ist für Sie keine Frage, aber im Moment suche ich genau danach. – Martin