2. Klausur SQL WG92 2. Klausur SQL Nordwind Datenbank Klasse: WG92 Frau Rivera de Sena/ Frau Steinhorst Datum: Mittwoch, 29.06.2011 Name: Muzaffer Gülkara Punkte:___________________ Situation 1) Note:_____________________ 28 Punkte Sie sind Mitarbeiter/in des Unternehmens Nordwind Traders. Ihre Aufgabe ist es, funktionsfähige Abfragen zu den folgenden Fragestellungen Ihres Vorgesetzten Herrn Weis mittels der Datenbank des Unternehmens zu erstellen. Wichtig ist es Herrn Weis, dass ihm die Antworten auch direkt visuell in Form von Screenshots vorliegen. 1. Ermitteln Sie die Vor- und Nachnamen aller Lieferanten, die die Position „Marketing Manager“ haben. Sortieren Sie die Tabelle absteigend nach Nachnamen. 4 Punkte Abfrage: SELECT Vorname, Nachname From Lieferanten Where Position = "Marketing Manager" order by Nachname desc 2. Ermitteln Sie den Produktcode, Artikelnamen und die Liefereinheit aller Artikel der Kategorie „Backwaren & Backmischungen“ mit Mindestbestand gleich 5. Benennen Sie die Spalte Artikelname um in „Artikelbezeichnung“ und sortieren Sie Ihre Ergebnistabelle aufsteigend nach Produktcode und absteigend nach Liefereinheit. 4 Punkte Abfrage: SELECT Produktcode, Artikelname as "Artikelbezeichnung" , Liefereinheit, Kategorie, Mindestbestand From Artikel Where Kategorie="Backware n & Backmischungen" Order by Produktcode asc, Liefereinheit desc 3. Screenshot: Screenshot: Ermitteln Sie die maximalen Standardkosten der Artikel pro Kategorie. Listen Sie in der Ergebnistabelle die Kategorie und die jeweiligen maximalen Kosten auf und sortieren sie diese Tabelle aufsteigend nach Kategorie. 4 Punkte Abfrage: SELECT MAX(Standardkosten) Kategorie Screenshot: Seite 1 2. Klausur SQL WG92 From Artikel Group by Kategorie order by Kategorie asc 4. Ermitteln Sie die Artikelbezeichnung, den Zielbestand und die Kategorie aller Artikel mit Zielbestand größer oder gleich 40 und in der Kategorie „Trockenfrüchte & Nüsse“ sind. Benennen Sie die Spalte des Zielbestandes um in „Zielbestand“ und sortieren Sie die Tabelle aufsteigend nach dem Zielbestand. 4 Punkte Abfrage: SELECT [Ziel für Bestand] as "Zielbestand", Artikelname, Kategorie From Artikel Where Kategorie ="Trockenfrüchte & Nüsse" and [Ziel für Bestand]>=40 Order by [Ziel für Bestand] asc 5. Screenshot: Ermitteln Sie die Summe der Listenpreise der Artikel pro Kategorie. Listen Sie in der Ergebnistabelle die Kategorie und die jeweilige Summe der Listenpreise auf und sortieren sie diese Tabelle absteigend nach Kategorie. 4 Punkte Abfrage: SELECT SUM(Listenpreis), Kategorie From Artikel Group by kategorie order by Kategorie desc Screenshot: Seite 2 2. Klausur SQL WG92 6. Ermitteln Sie die Anzahl aller Artikel und benennen Sie das Ergebnis um in „Anzahl_Artikel“. 2 Punkte Abfrage: SELECT Count(*) as "Anzahl_Artikel" From Artikel 7. Screenshot: Listen Sie die Namen, Vornamen, geschäftliche Telefonnummern der Kunden auf, die nicht in den Orten „Boston“, „Honolulu“ und „Las Vegas“ wohnen. 3 Punkte Abfrage: SELECT Nachname, Vorname, [Telefon (geschäftlich)], Ort From Kunden Where not "Boston" or "Honolulu" or "Las Vegas" Screenshot: Seite 3 2. Klausur SQL WG92 8. Ermitteln Sie die unterschiedlichen Orte und Bundesländer der Kunden. Jeder Ort sollte nur einmal vorkommen. Sortieren Sie die Tabelle aufsteigend nach Ort und absteigend nach Bundesland. 3 Punkte Abfrage: SELECT distinct [Bundesland/Kanton], ort From Kunden Order by Ort asc, [Bundesland/Kanton] desc Screenshot: Situation 2) 15 Punkte Ihr Vorgesetzter Herr Weis, hat von einem Mitarbeiter SQL-Abfragen erhalten und erwartet von Ihnen, dass Sie Ihm darlegen, was genau mit diesen Abfragen aus der Datenbank ermittelt wurde. Ihre Aufgabe ist es, die folgenden Abfragen detailliert zu interpretieren sowie auch die Lösung aus der Nordwind Datenbank anzugeben (hier kein Screenshot notwendig). Abfrage: Select avg(standardkosten) From artikel Where liefereinheit = ("24 x 250-g-Packungen") Ihre Interpretation mit Lösung: Durchschnittliche Standardkosten der Artikel mit der Verpackung: 24 x 250-g-Packungen Lösung: 21,56 € Seite 4 2. Klausur SQL WG92 Abfrage: Select sum(listenpreis) From artikel Where mindestbestand >30 Ihre Interpretation mit Lösung: Ermittlung der Summe der Listenpreise von den Artikel mit einem Mindestbestand von größer 30. Lösung: 15,33 € Abfrage: Select min(mindestbestand) From artikel Where kategorie = ("obst- & gemüsekonserven") Ihre Interpretation mit Lösung: Ermittlung des Minimums der Mindestbestände der Kategorie „Obst- & Gemüsekonserven" der Artikel. Lösung: 10 Abfrage: Select count(*) as "VertriebsmitarbeiterIn" From personal Where position in ("Vertriebsmitarbeiter", "Vertriebsmitarbeiterin") Ihre Interpretation mit Lösung: Ermittlung der Anzahl des Personals mit der Position Vertriebsmanager oder Vertriebsmanagerin Lösung: 6 Abfrage: select Listenpreis as Netto, Listenpreis*1.19 as Brutto from artikel Ihre Interpretation mit Lösung: Berechnung und Umbenennung der Listenpreise in Brutto und Umbenennung Listenpreis in Netto der Artikel Lösung: Situation 3) 7 Punkte Ihr Vorgesetzter Herr Weis möchte seine Kenntnisse in SQL gerne erweitern und bittet Sie, Ihm zu erklären, was genau durch das group by Attribut festgelegt wird und wo der Unterschied zwischen den Klauseln where und having liegt. Ihre Lösung: Durch das Attribut GROUP BY werden Ereignisse in einer Spalte zusammengefasst und gruppiert. Seite 5 2. Klausur SQL WG92 Das Having Attribut steht in Verbindung mit dem GROUP BY Klausel und kann nur bei Benutzung von GROUP BY angewendet werden. Bei der Where- Bedingung kann man ohne weitere Benutzung von anderen Attributen anwenden. Hinweise: Im Ordner Eigene Dateien finden Sie die Datenbank des Unternehmens Nordwind Traders mit dem Namen 05_Nordwind 2007.accdb sowie die Klausuraufgabenstellung mit dem Namen SQL_Klausur_29.06.2011.docx. Beantworten Sie die Fragestellungen zu den 3 Situationen direkt in dem Word-Dokument. Vergessen Sie nicht das Word-Dokument regelmäßig unter Ihrem Namen in Ihrem Ordner Eigene Dateien abzuspeichern! Beispiel: SQL_Klausur_29.06.2011_Tanja_Steinhorst.docx Bitte drucken Sie Ihre Lösungen spätestens 5 Minuten vor Beendigung der Klausurzeit 1x aus, Benachrichtigen Sie vorher die Lehrkraft über Ihren Druckwunsch, damit es nicht zu einem unnötigen Druckerstau kommen kann. Jeder weitere und falsche Ausdruck führt zu Abzügen von 4 Punkten pro Blatt! Seite 6