paul müller
Neuer Benutzer
- Beiträge
- 3
Hallo ich habe ein Problem mit meiner SQL anfragen. Ich bin noch ein ziemlicher Anfänger und gerade verwirrt
Folgende Datenbankstruktur ist gegebeben
KOMPONIST(KNR, NAME, VORNAME, GEBOREN, GESTORBEN)
STUECK(SNR, KNR->KOMPONIST, TITEL, TONART, OPUS)
CD(CDNR, NAME, HERSTELLER, ANZ CDS, GESAMTSPIELZEIT)
AUFNAHME(CDNR->CD, SNR->STUECK, ORCHESTER, LEITUNG)
SOLIST((CDNR, SNR)->AUFNAHME, NAME, INSTRUMENT)
Es sind nun alle CD´s gesucht die mehr als einen Komponisten enthalten
Von diesen soll dann der Name der CD ausgegeben werden.
Group By und Count dürfen nicht benutzt werden
Um das zu ereichen muss man ja die 4 Tabellen miteinander verbinden
Dies habe ich mir so vorgestellt:
SELECT DISTINCT cd.name
FROM komponist k LEFT join stueck s ON k.knr=s.knr
LEFT join aufnahme a ON a.snr=s.snr
LEFT join cd ON cd.cdnr=a.cdnr
Mir fehlt also noch die WHERE Bedienung
Ich muss abfragen das mehre KNR auf eine CDNR fallen.
Leider habe ich keine Ahnung wie ich das realisieren soll
Folgende Datenbankstruktur ist gegebeben
KOMPONIST(KNR, NAME, VORNAME, GEBOREN, GESTORBEN)
STUECK(SNR, KNR->KOMPONIST, TITEL, TONART, OPUS)
CD(CDNR, NAME, HERSTELLER, ANZ CDS, GESAMTSPIELZEIT)
AUFNAHME(CDNR->CD, SNR->STUECK, ORCHESTER, LEITUNG)
SOLIST((CDNR, SNR)->AUFNAHME, NAME, INSTRUMENT)
Es sind nun alle CD´s gesucht die mehr als einen Komponisten enthalten
Von diesen soll dann der Name der CD ausgegeben werden.
Group By und Count dürfen nicht benutzt werden
Um das zu ereichen muss man ja die 4 Tabellen miteinander verbinden
Dies habe ich mir so vorgestellt:
SELECT DISTINCT cd.name
FROM komponist k LEFT join stueck s ON k.knr=s.knr
LEFT join aufnahme a ON a.snr=s.snr
LEFT join cd ON cd.cdnr=a.cdnr
Mir fehlt also noch die WHERE Bedienung
Ich muss abfragen das mehre KNR auf eine CDNR fallen.
Leider habe ich keine Ahnung wie ich das realisieren soll