Oracle SQL - Outer Joins

DKK007

PCGH-Community-Veteran(in)
Ich habe derzeit für die DB-Klausurvorbereitung ein paar Zusatzaufgaben in Bearbeitung. Bei den Outer Joins komme ich gerade nicht weiter:
Outer Joins
a) Bei welchen Sternen wurde bisher noch kein Planet entdeckt (d.h.
sie sind nicht als Host-Sterne verzeichnet)? Geben Sie die Namen der
entsprechenden Sterne aus.

Wie würde diese Abfrage mit Outer Joins aussehen? Die Spalte HOSTNAME in der Planeten-Tabelle existiert natürlich.
 
Hmm, würde so etwas in der Art vermuten:
Code:
SELECT s.Name FROM Sterne s LEFT OUTER JOIN Planeten p ON p.Hostname = s.Name WHERE p.Name IS NULL
 
Also ich hab nicht so den Plan von Datenbanken und ohne die genauen Tabellen zu kennen kann ich so keine Aussage treffen, aber vielleicht hilft Dir der Link hier weiter:

SQL FULL OUTER JOIN Keyword

So wie ich deine Abfrage verstehe hast Du zwei Tabellen, Sterne und Planeten.
Jetzt suchst Du in Sterne alles das, was nicht in der Schnittmenge von beiden Tabellen enthalten ist, hab ich das soweit richtig verstanden?

Ich würde es in etwa so machen:
SELECT s.Name FROM Sterne s LEFT OUTER JOIN Planeten p ON p.Hostname = s.Name WHERE p.Name IS NOT in p.Hostname

P.S.: w3schools ist grad in Hinsicht auf Klausuren immer sehr gut zum Lernen und Verstehen
 
Ich habe derzeit für die DB-Klausurvorbereitung ein paar Zusatzaufgaben in Bearbeitung. Bei den Outer Joins komme ich gerade nicht weiter:

Wie würde diese Abfrage mit Outer Joins aussehen? Die Spalte HOSTNAME in der Planeten-Tabelle existiert natürlich.

1. Muss es ANSI-SQL sein?
2. Ohne die Tabellenstruktur zu kennen wird es schwierig.
3. Bei Oracle löst man sowas über "not exists"...
 
Zurück