Probleme mit Mehrfach joins

dyingangel666

Neuer Benutzer
Beiträge
2
Hi Leute, wir haben momentan ein paar Übungsaufgaben zu SQL Abfragen zu bearbeiten und ich komme gerade nicht weiter. Wir nutzen eine Oracle Datenbank und den Oracle SQL Developer als Client-Tool. Das hier ist die Datenbank für die die Abfragen erstellt werden sollen.

http://sqlcoach.informatik.fh-kl.de...nario_id=1&number=3.3&view=get&taskgroup_id=3

Wir sollen jetzt ausschließlich inner joins anwenden und die Aufgabe lautet " Ermitteln sie den Abteilungsleiter von Heinz"... ich komm da irgendwie absolut nicht weiter.

Code:
select distinct mitarbeiter.persnr, mitarbeiter.vname, mitarbeiter.nname, mitarbeiter.projnr, mitarbeiter.telefonnr, mitarbeiter.gehalt from personal chef
inner join projekt on chef.projnr = projekt.projnr
inner join abteilung on projekt.abtnr = abteilung.abtnr
inner join personal mitarbeiter on chefnr = mitarbeiter.persnr and chef.vname='Heinz'

Soweit bin ich bis jetzt. Ich hab den Mitarbeiter und sehe welchem Chef er zugeordnet ist, anhand der Chefnr (welche der Persnr entspricht). Ich hab aber gerade total den Denkknoten, wie ich mit einem join von der Chefnr auf den Namen des Chefs schließen soll... Über Hilfe wäre ich echt sehr dankbar. Und bitte nicht gleich eine Lösung posten, Tips würden mir schon reichen :)
 
Werbung:

dyingangel666

Neuer Benutzer
Beiträge
2
Sorry ich wollte die schlechte Formatierung gerade nochmal bearbeiten aber da macht die Seite gerade Probleme. Geht einfach über den Link zum SQL Coach, da seht ihr die aktuelle Datenbank.
 
Werbung:

ukulele

Datenbank-Guru
Beiträge
4.409
Ich gehe mal davon aus das cefnr in Abteilung steht. Dann müsste 'Heinz' eigentlich in die WHERE Klausel wandern.
Code:
select distinct mitarbeiter.persnr, mitarbeiter.vname, mitarbeiter.nname, mitarbeiter.projnr, mitarbeiter.telefonnr, mitarbeiter.gehalt
from personal chef
inner join projekt on chef.projnr = projekt.projnr
inner join abteilung on projekt.abtnr = abteilung.abtnr
inner join personal mitarbeiter on abteilung.chefnr = mitarbeiter.persnr
where chef.vname='Heinz'
Da du aber nicht Heinz als Chef sondern den Chef von Heinz willst wirst du vermutlich eher mitarbeiter.vname = 'Heinz' versuchen wollen. Ich kann jetzt aber nicht genau sagen ob die Datenstruktur dann richtig ist, ich kann auf dieser Testseite keinen Code ausführen.
 
Oben