Zum Inhalt springen

Kostenlose Lerninhalte

/informatik/163111/aufgabe

Frei zugängliche, geprüfte Lerninhalte zum Verstehen, Wiederholen und selbstständigen Üben.

Aufgabe

/informatik/163111/aufgabe

/informatik/163111/aufgabe

Mit der Abfrage

sql
SELECT * 
FROM NUTZER, ZAHLUNGSDATEN;

erhältst du das zu umfangreiche kartesische Produkt, in dem jeder Eintrag aus NUTZER mit jedem Eintrag aus ZAHLUNGSDATEN kombiniert wird. Dabei möchtest du eigentlich nur die Einträge angezeigt haben, in denen der Fremdschlüssel ZAHLUNGSDATEN_KundenID in NUTZER mit dem Attributwert von KundenID ZAHLUNGSDATEN übereinstimmt:

natürlicher Verbund

(Ausschnitt aus der Ergebnistabelle)

Welche WHERE-Statements liefern dir nur die gelb markierten Datensätze mit den zusammenpassenden IDs?

Lösung anzeigen
Lösung
Voraussetzung
SQL-Abfragen
Strategie

Schritte

Richtig sind

sql
WHERE NUTZER.ZAHLUNGSDATEN_KundenID = ZAHLUNGSDATEN.KundenID

und

sql
WHERE ZAHLUNGSDATEN_KundenID = KundenID

Du möchtest, dass die KundenIDs in beiden Tabellen übereinstimmen, deshalb bringt dir die UserID nichts und die beiden anderen Antworten sind falsch.

Da die Attribute unterschiedlich benannt sind, ist es optional, den Tabellennamen mit anzugeben.