SQL-Abfragen über mehrere Tabellen II
Nachfolgend siehst du einen Ausschnitt aus der Datenbank des fiktiven Unternehmens "Zony", das sich auf die Produktion und den Vertrieb von digitalen Entertainment-Produkten spezialisiert hat.
Schema:
KUNDE [ KundenNr : INT ; Name : VARCHAR(100) ; GebDat : DATE ; Geschlecht : VARCHAR(20) ; Adresse : VARCHAR(100) ; TelefonNr : VARCHAR(100) E-Mail : VARCHAR(100) ]
BESTELLUNG [ BestellNr : INT ; Bestelldatum : DATE ; Lieferdatum : DATE ; bezahlt : BOOLEAN ; KundenNr : INT]
PRODUKT [ ProduktNr : INT ; KategorieNr : INT ; Typ : VARCHAR(100) ; Modellname : VARCHAR(100) ; Preis : DECIMAL(10,2) ]
KATEGORIE [ KategorieNr : INT ; Name : VARCHAR(100) ; Verantwortlich : INT ]
hat_Position [ BestellNr : INT ; ProduktNr : INT ; Menge : INT ]
PERSONAL [ ID : INT ; Name : VARCHAR(100) ; GebDat : DATE ; Geschlecht : VARCHAR(20) ; Adresse : VARCHAR(100) ; TelefonNr : VARCHAR(100) ; E-Mail : VARCHAR(100) ]
Erklärung: Der Fremdschlüssel "Verantwortlich" in der Tabelle KATEGORIE verweist auf dem Primärschlüssel der Tabelle PERSONAL und gibt an, wer aus dem Personal für die Kundenbetreuung der jeweiligen Kategorie zuständig ist.
Vereinfachtes Klassendiagramm:
Formuliere für nachfolgende Aufgaben die zugehörige SQL-Abfrage!
1. Gib eine Übersicht über alle Bestellungen des Kunden "Hans Meier" (BestellNr, Bestelldatum) aus und sortiere das Ergebnis absteigend nach dem Bestelldatum.
2. Gib die BestellNr der Bestellung aus, die am 05-08-2013 einging und als Position das Modell "audioStorm M320" beinhaltet.
3. Wer (Name) bestellte das Modell "Brilliance V32" fünfmal?
4. Welcher Kunde (KundenNr, Name) hat seine Bestellung noch nicht bezahlt?
5. Wann (BestellNr, Bestelldatum) wurden jeweils Produkte der Kategorie "Music" bestellt?
6. Gib den Namen der Kategorie aus zu der das Modell "Professional X1200" gehört.