Gegeben sind folgende Relationen:
Welches Ergebnis liefern die folgenden SQL-Abfragen? Überprüfen Sie ihre DQL-Statements anhand der in 2.7.1 erstellten Datenbank namens „Rechnerverwaltung“ (Sind Fehler enthalten, so sind diese zu markieren)
a)
SELECT I.RNr FROM Installationen I, Programm P WHERE I.RNr=P.RNr AND Bereich='Grafik';
b)
SELECT StudAss, SUM(Gehalt) AS Ges FROM Assistent GROUP BY StudAss;
c)
SELECT StudAss, SUM(Gehalt) FROM Assistent GROUP BY StudAss HAVING SUM(Gehalt)>4;
d)
SELECT SUM(Speicher) FROM Rechner WHERE Leist=3;
In einem Weinkeller werden viele Weinflaschen (WEIN) gelagert. Jede Weinflasche wurde von einem Winzer (WINZER) befüllt und kann anhand der Datenbank leicht in den Regalreihen (KELLER) des Kellers gefunden werden. Es kann dabei angenommen werden, dass immer ausreichend Platz in den Regalen des Kellers vorhanden ist. Wird eine Flasche aus dem Keller entfernt, wird ein entsprechender Eintrag (PROTOKOLL) vermerkt. Wenn der Eigentümer des Kellers eine Flasche selbst trinkt, wird im Protokoll als Verwendung ’Eigenbedarf’ eingetragen.
| Relation Winzer | |||||
|---|---|---|---|---|---|
| wnr | name | strasse | plz | ort | telefon |
| 1 | Lackner Tinnacher | Steinbach 8 | 4567 | Gamlitz | 1234567 |
| 2 | Weingut Prager | Weissenkirchen 48 | 3610 | Weissenkirchen | 1234567 |
| 3 | Weingut Emmerich Knoll | Unterloiben 10 | 3601 | Unterloiben | 12344457 |
| 4 | Weingut F.X. Pichler | Unterloiben 27 | 3601 | Unterloiben | 11122233 |
| 5 | Weingut Spätlese | Weintalstrasse 23 | 1136 | Wien | |
| 6 | Freie Weingarten Wachau | Kremstalstrasse 23 | 3600 | Krems | 2304002 |
| 7 | Stiftskellerei | ||||
| 8 | Weingut Biegler | Wienerstrasse 88 | 3502 | Gumpoldskirchen | 54564565 |
| Relation Wein | |||||||
|---|---|---|---|---|---|---|---|
| nr | bezeichnung | sorte | jahrgang | preis | anzahl | wnr | knr |
| 1 | Riesling Kellerberg | Riesling | 1999 | 28.00 | 24 | 4 | 1 |
| 2 | Loibenberg | Gr. Veltliner | 2000 | 19.00 | 36 | 4 | 2 |
| 3 | Ried Kreutles | Gr. Veltliner | 2000 | 19.00 | 15 | 3 | 4 |
| 4 | Riesling Smaragd | Riesling | 2000 | 21.00 | 30 | 2 | 5 |
| 5 | Grauburgunder | Grauburgunder | 2003 | 16.00 | 72 | 1 | 6 |
| 6 | Morillon | Chardonnay | 2003 | 9.00 | 55 | 1 | 7 |
| 7 | Riesling Federspiel | Riesling | 2003 | 9.90 | 80 | 6 | 3 |
| 8 | Chardonnay | Chardonnay | 2003 | 9.00 | 16 | 8 | 8 |
| Relation Keller | |||
|---|---|---|---|
| knr | reihe | regal | fach |
| 1 | 1 | 1 | 1 |
| 2 | 1 | 1 | 2 |
| 3 | 1 | 1 | 3 |
| 4 | 1 | 2 | 1 |
| 5 | 1 | 2 | 2 |
| 6 | 2 | 1 | 1 |
| 7 | 2 | 1 | 2 |
| 8 | 2 | 2 | 1 |
| Relation Protokoll | ||||
|---|---|---|---|---|
| pnr | nr | pDatum | verwendung | anzahl |
| 1 | 1 | 2003-01-12 | Geschenk an Herrn Berger | 12 |
| 2 | 3 | 2003-07-10 | Eigenbedarf | 2 |
| 3 | 1 | 2003-07-23 | Eigenbedarf | 4 |
| 4 | 6 | 2003-08-14 | Geschenk (Frau Kunz) | 6 |
| 5 | 1 | 2003-08-27 | Glasbruch | 1 |
| 6 | 4 | 2003-11-03 | Korkgeruch | 1 |
| 7 | 6 | 2003-11-03 | Eigenbedarf | 3 |
Folgende SQL-Abfragen sind gesucht! Überprüfen Sie ihre DQL-Statements anhand der in 2.7.1 erstellten Datenbank namens „Winzerverwaltung“
Basis Aufgaben 1-8)
1) Ermittle alle Weine (Bezeichnung, Preis) die unter 10.00 € kosten.
| bezeichnung | preis |
|---|---|
| Morillon | 9 |
| Riesling Federspiel | 9.9 |
| Chardonnay | 9 |
2) Ermittle alle Weine (Bezeichnung, Anzahl) mit der Sorte Chardonnay, bei denen noch mehr als 20 Flaschen vorhanden sind.
| bezeichnung | anzahl |
|---|---|
| Morillon | 55 |
3) Ermittle alle Winzer (Name), die die Sorte Riesling verkaufen.
| name |
|---|
| Weingut F.X. Pichler |
| Weingut Prager |
| Frei Weingarten Wachau |
4) Ermittle alle Weine (Bezeichnung), die von einem Winzer in einem mit „G“ beginnenden Ort verkauft werden.
| bezeichnung | name | ort |
|---|---|---|
| Grauburgunder | Lackner Tinnacher | Gamlitz |
| Morillon | Lackner Tinnacher | Gamlitz |
| Chardonnay | Weingut Biegler | Gumpoldskirchen |
5) Ermittle alle Weine (Bezeichnung und Sorte) und das Protokolldatum der Entnahme, die für den Eigenbedarf verwendet wurden.
| bezeichnung | sort | pDatum |
|---|---|---|
| Ried Kreutles | Gr. Veltliner | 2003-07-10 |
| Riesling Kellerberg | Riesling | 2003-07-23 |
| Morillon | Chardonnay | 2003-11-03 |
6) Ermittle alle Weine (Bezeichnung und Sorte), die im Keller in der Reihe 1 gelagert werden.
| bezeichnung | sorte |
|---|---|
| Riesling Kellerberg | Riesling |
| Loibenberg | Gr. Veltliner |
| Ried Kreutles | Gr. Veltliner |
| Riesling Smaragd | Riesling |
| Riesling Federspiel | Riesling |
7) Ermittle alle Weine (Bezeichnung und Sorte) inkl. Winzer (Name), die im Keller in der Reihe 1 gelagert werden.
| bezeichnung | sorte | name |
|---|---|---|
| Riesling Kellerberg | Riesling | Weingut F.X. Pichler |
| Loibenberg | Gr. Veltliner | Weingut F.X. Pichler |
| Ried Kreutles | Gr. Veltliner | Weingut Emmerich Knoll |
| Riesling Smaragd | Riesling | Weingut Prager |
| Riesling Federspiel | Riesling | Freie Weingarten Wachau |
8) Ermittle alle Weine (Bezeichnung) die im Keller in der Reihe 2 gelagert werden, nach dem Jahr 2000 (jahrgang) produziert wurden und mehr als 15€ (preis) kosten.
| bezeichnung | jahrgang | preis |
|---|---|---|
| Grauburgunder | 2003 | 16 |
Erweiterte Aufgaben a-f)
a) Geben Sie für die Sorte ’Riesling’ die Namen aller Winzer sowie die Flaschenanzahl aus. Sortieren Sie dabei nach der Flaschenanzahl absteigend.
| name | anzahl |
|---|---|
| Freie Weingarten Wachau | 80 |
| Weingut Prager | 30 |
| Weingut F.X. Pichler | 24 |
b) Ermitteln Sie für jeden Winzer den durchschnittlichen Flaschenpreis und die Gesamtanzahl der Flaschen im Keller. Berücksichtigen Sie dabei nur Winzer, von denen bekannt ist, aus welchem Ort sie kommen. Sortieren Sie die Liste nach dem Preis absteigend.
| name | durchschnittspreis | gesamtanzahl |
|---|---|---|
| Weingut F.X. Pichler | 23.50 | 60 |
| Weingut Prager | 21.00 | 30 |
| Weingut Emmerich Knoll | 19.00 | 15 |
| Lackner Tinnacher | 12.50 | 127 |
| Freie Weingarten Wachau | 9.90 | 80 |
| Weingut Biegler | 9.00 | 16 |
c) Geben Sie eine Liste aller Weinbezeichnungen sowie den Namen des erzeugenden Winzers aus, von denen im Jahr 2003 keine Flasche getrunken worden ist (Verwendung in Tabelle Protokoll =’Eigenbedarf’). Sie brauchen dabei nur Winzer berücksichtigen, von denen mindestens eine Flasche im Keller vorhanden ist.
| nr | bezeichnung | name |
|---|---|---|
| 2 | Loibenberg | Weingut F.X. Pichler |
| 4 | Riesling Smaragd | Weingut Prager |
| 5 | Grauburgunder | Lackner Tinnacher |
| 7 | Riesling Federspiel | Freie Weingarten Wachau |
| 8 | Chardonnay | Weingut Biegler |
d) Suchen Sie die Winzer, von denen der Kellereigentümer die meisten Flaschen getrunken (Verwendung in Tabelle Protokoll = ’Eigenbedarf’) hat. Geben Sie jeweils den Namen des Winzers sowie die Gesamtkosten des von diesem Winzer konsumierten Weines aus.
| name | anzahl | kosten |
|---|---|---|
| Weingut F.X. Pichler | 4 | 112.00 |
e) Geben Sie fur jeden Winzer aus,
| name | anzahl | preisklasse |
|---|---|---|
| Freie Weingarten Wachau | 80 | niedrig |
| Lackner Tinnacher | 55 | niedrig |
| Lackner Tinnacher | 72 | mittel |
| Weingut Biegler | 16 | niedrig |
| Weingut Emmerich Knoll | 15 | mittel |
| Weingut F.X. Pichler | 24 | gehoben |
| Weingut F.X. Pichler | 36 | mittel |
| Weingut Prager | 30 | gehoben |
f) Erstellen Sie eine Liste, die angibt, wie viele Flaschen jedes in der Datenbank gespeicherten Winzers sich im Keller befinden. Sortieren Sie dabei nach der Flaschenanzahl absteigend.
| name | anzahl |
|---|---|
| Lackner Tinnacher | 127 |
| Freie Weingarten Wachau | 80 |
| Weingut F.X. Pichler | 60 |
| Weingut Prager | 30 |
| Weingut Biegler | 16 |
| Weingut Emmerich Knoll | 15 |
| Weingut Spätlese | |
| Stiftskellerei |