Aufgabe 2
am Donnerstag, 30. Oktober 2008, 18:13
Bei unserer 2. Aufgabe sollen wir unsere SQL-Kenntnisse unter Beweis stellen. Dazu habe ich sechs Abfragen vorbereitet, in denen verschiedenste Attribute vorkommen.
Meine Abfragen:
1. Eine Liste aller Autoren vom Verlag „Manz“ (bzw. Verlag, der „manz“ beinhaltet), aufsteigend sortiert nach Autor, jeder Autor wird nur einmal aufgezählt
2. Eine Liste aller Kunden, die in einem Ort wohnen, der „see“ beinhaltet, absteigend sortiert nach dem Nachnamen der Kunden
3. Eine Liste aller Kunden mit Kundennummer, Vorname und Nachname, deren Kundennummer mit 8 beginnt, jeder Kunde wird nur einmal aufgezählt
4. Eine Liste aller Bücher mit Autor, die vom Kunden „Lutz“ bestellt wurden
5. Eine Liste über die Anzahl der Kunden pro Region, absteigend sortiert nach der Anzahl der Kunden
6. Eine Liste über die Anzahl der Bücher pro Verlag; es werden nur jene Verlage angezeigt, von denen unsere Buchhandlung mehr als 100 Bücher hat; Liste absteigend sortiert nach der Anzahl der Bücher
Meine Abfragen:
1. Eine Liste aller Autoren vom Verlag „Manz“ (bzw. Verlag, der „manz“ beinhaltet), aufsteigend sortiert nach Autor, jeder Autor wird nur einmal aufgezählt
SELECT DISTINCT Buch.Autor FROM Buch, Verlag WHERE Verlag.Kurzbezeichnung=Buch.Verlag AND Verlag.Name LIKE '%manz%' ORDER BY Buch.Autor ASC |
2. Eine Liste aller Kunden, die in einem Ort wohnen, der „see“ beinhaltet, absteigend sortiert nach dem Nachnamen der Kunden
SELECT Kunde.Vorname, Kunde.Nachname, PLZ.Ort FROM Kunde, PLZ WHERE PLZ.Plz=Kunde.Plz AND PLZ.Ort LIKE '%see%' ORDER BY Kunde.Nachname DESC |
3. Eine Liste aller Kunden mit Kundennummer, Vorname und Nachname, deren Kundennummer mit 8 beginnt, jeder Kunde wird nur einmal aufgezählt
SELECT DISTINCT Auftrag.Kundennummer,Kunde.Vorname, Kunde.Nachname FROM Kunde, Auftrag WHERE Kunde.Nr=Auftrag.Kundennummer AND Auftrag.Kundennummer LIKE '8%' |
4. Eine Liste aller Bücher mit Autor, die vom Kunden „Lutz“ bestellt wurden
SELECT Kunde.Nachname, Buch.Titel, Buch.Autor FROM Kunde, Auftrag, Auftragspos, Buch WHERE Kunde.Nr=Auftrag.Kundennummer AND Auftrag.Nr=Auftragspos.Auftragsnummer AND Auftragspos.Buchnummer=Buch.Nr AND Kunde.Nachname ='Lutz' |
5. Eine Liste über die Anzahl der Kunden pro Region, absteigend sortiert nach der Anzahl der Kunden
SELECT COUNT(*) 'Anzahl der Kunden', PLZ.Region FROM Kunde, PLZ WHERE PLZ.Plz=Kunde.Plz GROUP BY PLZ.Region ORDER BY 1 desc |
6. Eine Liste über die Anzahl der Bücher pro Verlag; es werden nur jene Verlage angezeigt, von denen unsere Buchhandlung mehr als 100 Bücher hat; Liste absteigend sortiert nach der Anzahl der Bücher
SELECT COUNT(*) 'Anzahl der Bücher', Verlag.Name FROM Buch, Verlag WHERE Verlag.Kurzbezeichnung=Buch.Verlag GROUP BY Verlag.Name HAVING COUNT(*) > 100 ORDER BY 1 DESC |
Julia.Lang.Uni-Linz,
Montag, 3. November 2008, 11:06
Hallo Andrea!
Ich finde die Idee, deine Abfragen mit der Datenbank zu verlinken, damit man auch das jeweilige Ergebnis abrufen kann, echt toll!
Darf ich fragen wie du das gemacht hast?
LG, Julia
Ich finde die Idee, deine Abfragen mit der Datenbank zu verlinken, damit man auch das jeweilige Ergebnis abrufen kann, echt toll!
Darf ich fragen wie du das gemacht hast?
LG, Julia
Marlene.Dobretsberger.Uni-Linz,
Montag, 3. November 2008, 20:02
Hallo Julia,
auch ich habe die Frage im Blog schon gestellt ;)
Schön zu wissen, dass wir beide hart daran arbeiten die HUE zu bewältigen. Unter Tutorien hat der Tutor einen Beitrag verfasst, der dabei helfen soll, die Aufgabe zu lösen.
lg
marlene
auch ich habe die Frage im Blog schon gestellt ;)
Schön zu wissen, dass wir beide hart daran arbeiten die HUE zu bewältigen. Unter Tutorien hat der Tutor einen Beitrag verfasst, der dabei helfen soll, die Aufgabe zu lösen.
lg
marlene
Hans.Mittendorfer.Uni-Linz,
Montag, 3. November 2008, 20:45
und wie wär's wenn Sie zu diesem Beitrag, wo zu lesen ist wie's geht, einfach "verlinken" ?