Ich habe Abfrage wie folgt:Oracle SQL - wählen Sie Zeilen mit dem höchsten Niveau
SELECT CONNECT_BY_ROOT(name), LEVEL
FROM Workers
CONNECT BY PRIOR boss=nick
START WITH function IN ('programmer', 'designer');
ich:
BELLA 1
BELLA 2
BELLA 3
MICKEY 1
MICKEY 2
BOB 1
BOB 2
DUDE 1
DUDE 2
DUDE 3
SONIA 1
SONIA 2
SONIA 3
KATE 1
KATE 2
KATE 3
LUKE 1
LUKE 2
LUKE 3
LUKE 4
Was würde Ich mag es, mit dem höchsten Niveau Namen zu erhalten. ich meine:
BELLA 3
MICKEY 2
BOB 2
DUDE 3
SONIA 3
KATE 3
LUKE 4
ich es versucht wie folgt:
SELECT CONNECT_BY_ROOT(name), MAX(LEVEL)
FROM Workers
CONNECT BY PRIOR boss=nick
START WITH function IN ('programmer', 'designer')
GROUP BY CONNECT_BY_ROOT(name);
aber es funktioniert nicht. Ich bekomme '00979. 00000 - kein GROUP BY Ausdruck 'Fehler. Warum? Wie kann ich es funktionieren lassen?
Ja, alles in allem war der Punkt, danke :) – michalsol