Übung 2: SQL-Abfragen über mehrere Tabellen: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| Zeile 22: | Zeile 22: | ||
FROM PERSON AS P, spielt AS S | FROM PERSON AS P, spielt AS S | ||
WHERE P.AusweisNr = S.AusweisNr | WHERE P.AusweisNr = S.AusweisNr | ||
</syntaxhighlight> | |||
</popup> | |||
<u>Aufgabe 2:</u><br> | |||
Wie lauten die Titel der CDs, die die Band "Kings of Leon" veröffentlicht hat? | |||
<popup name="Lösung"> | |||
<syntaxhighlight lang="sql"> | |||
SELECT C.Titel | |||
FROM BAND AS B, CD AS C | |||
WHERE B.Name = "Kings of Leon" | |||
AND B.BandNr = C.BandNr | |||
</syntaxhighlight> | </syntaxhighlight> | ||
</popup> | </popup> | ||
Version vom 1. April 2014, 13:13 Uhr
Schema:
BAND [ BandNr : INT ; Name : VARCHAR(100) ; Stil : VARCHAR(100) ]
PERSON [ AusweisNr : INT ; Name : VARCHAR(100) ; GebDat : DATE ; Rolle : VARCHAR(50) ]
INSTRUMENT [ Name : VARCHAR(100) ; Baujahr : INT ]
CD [ CDNr : INT ; Titel : VARCHAR(100) ; Erscheinungsjahr : INT ; Album? : BOOLEAN ; BandNr : INT ]
ist_mitglied_von [ AusweisNr : INT ; BandNr : INT]
spielt [ AusweisNr : INT ; Name : VARCHAR(100) ]
Vereinfachtes Klassendiagramm:
Formuliere für nachfolgende Aufgaben die zugehörige SQL-Abfrage!
Aufgabe 1:
Gib eine Übersicht aus, welche Person (Name) welche(s) Instrument(e) spielt!
<popup name="Lösung">
SELECT P.Name, S.Name
FROM PERSON AS P, spielt AS S
WHERE P.AusweisNr = S.AusweisNr
</popup>
Aufgabe 2:
Wie lauten die Titel der CDs, die die Band "Kings of Leon" veröffentlicht hat?
<popup name="Lösung">
SELECT C.Titel
FROM BAND AS B, CD AS C
WHERE B.Name = "Kings of Leon"
AND B.BandNr = C.BandNr
</popup>
