Informationsverarbeitung 2 SS08 |
Dienstag, 1. April 2008
1. Hausübung oder SQL for Dummies
Roland.Stegmüller.Uni-Linz, 21:15h
Aufgabe war die Erstellung von 5 selbstgestellten Abfragen an der SQL-Datenbank mit jeweils steigendem Schwierigkeitsgrad.
Dadurch, dass ich in Informationsverarbeitung I kein SQL gemacht habe, da der Schwerpunkt (zugegeben vor 7 Semestern) auf Excel lag, war ich auf das Tutorium angewiesen um die Grundbegriffe zu erlernen. Hier meine ersten komplett selbst erstellten Abfragen: 1. Welche Verlage bieten Bücher an und unter welcher Kurzbezeichnung werden sie geführt? SELECT v.Name, v.Kurzbezeichnung FROM Verlag v ORDER BY 1 ASC Dies ist die einfachste aller Abfragen, da keine Bedingungen berücksichtigt werden müssen. Als nächstes fügen wir weitere Datenfelder aus anderen Dateien hinzu. 2. Führe alle angebotenen Bücher mit dem Autor an und welche Verlage sie veröffentlichen! SELECT b.Titel, b.Autor, v.Name FROM Verlag v, Buch b WHERE v.Kurzbezeichnung=b.Verlag ORDER BY 1 ASC Um die Schwierigkeit weiter zu erhöhen, werden jetzt Funktionen eingefügt. 3. Wieviele Bücher führen die jeweiligen Verlage im Buchladen und was ist der jeweilige Durchschnittspreis pro Verlag? SELECT v.Name, COUNT(b.Nr) AS Menge, AVG(b.Preis) AS Durchschnittspreis FROM Verlag v, Buch b WHERE v.Kurzbezeichnung=b.Verlag GROUP BY 1 ORDER BY 1 ASC Ein zweites Beispiel zu den möglichen Funktionen soll durch weitere Bedingungen und Ausweitung der benötigten Daten an Komplexität gewinnen. 4. Rechne die durchschnittliche Auftragssumme der oberösterreichischen Auftragsgeber aus, welche sich nach den ersten 3000 Aufträgen ergab! SELECT p.Region, AVG(b.Preis*a.Menge) FROM Auftragspos a, PLZ p, Kunde k, Auftrag aa, Buch b WHERE p.Plz=k.Plz AND k.Nr=aa.Kundennummer AND aa.Nr=a.Auftragsnummer AND a.Buchnummer=b.Nr AND a.Auftragsnummer<=3000 AND p.Region="O" GROUP BY 1 Jetzt soll noch eine Havingfunktion eingebaut werden. 5. Gib alle Bundesländer an, die über eine durchschnittliche Auftragssumme von über 1000 Euro haben bei allen Aufträgen mit einer Auftragsnummer von 100 bis 1000! Führe auch die jeweiligen Durchschnittsbeträge an und wieviele Bücher die Aufträge durchschnittlich und insgesamt enthielten. Gliedere Sie außerdem absteigend mit ihren durchschnittlichen Auftragssummen. Select p.Region, AVG(b.Preis*a.Menge) AS Durchschnittsauftragssumme, AVG(a.Menge) AS Durchschnittsmenge, SUM(a.Menge) AS Gesamtmenge FROM PLZ p, Kunde k, Auftrag aa, Auftragspos a, Buch b WHERE p.Plz=k.Plz AND k.Nr=aa.Kundennummer AND aa.Nr=a.Auftragsnummer AND a.Buchnummer=b.Nr AND a.Auftragsnummer BETWEEN 100 AND 1000 GROUP BY 1 HAVING Durchschnittsauftragssumme>1000 ORDER BY 2 DESC Ich hab beim Tutorium diese Woche einiges gelernt und hoffe, dass ich bei den Abfragen keine Fehler gemacht habe. Hat wirklich Spaß gemacht, die Lösungen zu meinen eigenen Aufgaben zu finden. Bis zum nächsten Eintrag, mfg Roland ... comment |
Online for 6104 days
Last update: 2008.04.29, 12:51 status
You're not logged in ... login
menu
search
calendar
recent updates
Tutorium vom 15.04.08
Als erste Übung wurde ein einfacher HTML-Body... by Roland.Stegmüller.Uni-Linz (2008.04.15, 14:47) 2. Hausübung oder...
"Just in Time", also typisch für mich, gibts hier... by Roland.Stegmüller.Uni-Linz (2008.04.15, 14:46) 1. Hausübung oder...
Aufgabe war die Erstellung von 5 selbstgestellten Abfragen... by Roland.Stegmüller.Uni-Linz (2008.04.15, 14:46) Topics wurden angelegt
Solange die Stories nicht allgemeiner Natur sind, werden... by Roland.Stegmüller.Uni-Linz (2008.04.13, 22:32) 1. Tutorium-HÜ bis...
Aufgabe war die Erstellung einer Exceldatei, wobei... by Roland.Stegmüller.Uni-Linz (2008.04.13, 22:31) |