Gegeben ist eine Spalte mit den Namen eine mit den Nummern und eine mit den Nummer des chefs.
Ich soll nun die Leute ausgeben die min. ein Untergebenen haben. Wie mach ich das?
Gegeben ist eine Spalte mit den Namen eine mit den Nummern und eine mit den Nummer des chefs.
Ich soll nun die Leute ausgeben die min. ein Untergebenen haben. Wie mach ich das?
Hallo
Wenn jemand keinen Chef hat, ist dort ja auch keine Nummer eingetragen, oder? D.h. Du machst einfach eine Gruppierungs-Abfrage auf die Nummer des Chefs, wo die in der Nummer des Chefs >0 als Kriterium einträgst, dann hast Du alle Chefs und Du kannst ja dann noch die Anzahl der Untergebenem mit Count(Nummer) zählen lassen. Wenn Du die einzelnen Namen noch brauchst musst Du halt die die Tabelle nochmals mit sich selbst 1:1 auf die Nummer des Chefs verbinden und dann die Namen ausgeben lassen. Hier ein Beispiel, schnell gemacht, nicht kontrolliert:
SELECT tblMitarbeiter.NummerChef, tblMitarbeiter1.Name AS [Name Chef], tblMitarbeiter.Nummer, tblMitarbeiter.Name FROM tblMitarbeiter INNER JOIN tblMitarbeiter AS tblMitarbeiter1 ON tblMitarbeiter.NummerChef = tblMitarbeiter1.Nummer GROUP BY tblMitarbeiter.NummerChef, tblMitarbeiter1.Name, tblMitarbeiter.Nummer, tblMitarbeiter.Name HAVING (((tblMitarbeiter.NummerChef)>0));
Gruss
Heinz
Stelle ein SELECT über das script und gruppiere es!
SELECT FROM ( das funktionierende script ) x GROUP BY
Hallo es funktioniert fast ;) Danke Das einzige Problem ist, dass er nun manche Chefs mehrmals ausgibt. Also der Chef stehen so oft da wie er von anderen Mitarbeitern Chef ist.^^ (Also hat ein Chef 2 Untergebene, dann steht er 2 Mal da) Doch jeder Chef soll nur einmal da stehen,
Ist wahrscheinlich gar nicht so schwer nur mir fällt es gerade nicht ein wie man das am Besten macht?
Edit funktioniert nun alles, danke