Einstiegsbeitrag - IV2 |
Dienstag, 8. April 2008
3. Hausübung
Belma Avdic.Uni-Linz, 20:13h
Ausgehend von folgender Abfrage auf SQL.IDV.EDU
SELECT Kunde.Nr, Kunde.Nachname, COUNT(Auftrag.Nr) FROM Kunde, Auftrag WHERE Kunde.Nr = Auftrag.Kundennummer GROUP BY Kunde.Nr ORDER BY Kunde.Nr 1. Aufgabenstellung: Ergänzt wurde die Abfrage mit folgenden SQL-Statements: SUM(Buch.Preis*Auftragspos.Menge) AS Umsatz - somit wird der Umsatz berechnet und zusätzlich wird DISTINCT beim COUNT beigefügt. Lösung: SELECT Kunde.Nr, Kunde.Nachname,COUNT(DISTINCT Auftrag.Nr) AS Aufträge, SUM(Buch.Preis*Auftragspos.Menge) AS Umsatz FROM Auftragspos, Buch, Kunde, Auftrag WHERE(Buch.Nr=Auftragspos.Buchnummer) AND (Auftragspos.Auftragsnummer=Auftrag.Nr) AND (Auftrag.Kundennummer = Kunde.Nr) GROUP BY Kunde.Nr ORDER BY Kunde.Nr 2. Aufgabenstellung: In einem Weiteren Schritt wurde die Zeit (Jahr) der Aufträge ermittelt - mit folgender Funktion: Year (Datum) Lösung: SELECT Kunde.Nr, Kunde.Nachname, YEAR (Datum) FROM Auftrag, Kunde WHERE Auftrag.Kundennummer = Kunde.Nr GROUP BY Kunde.Nr ORDER BY Kunde.Nr 3. Aufgabenstellung: Die Abfrage 1 wurde in folgenden Zeitabschnit abgegrenzt: Auftrag.Datum BETWEEN '2000-12-31' AND '2001-12-31'. Somit erhalten wir die Information, welche Aufträge im Jahr 2001 getätigt wurden. Lösung: SELECT Kunde.Nr, Kunde.Nachname,COUNT(DISTINCT Auftrag.Nr) AS Aufträge, SUM(Buch.Preis*Auftragspos.Menge) AS Umsatz FROM Auftragspos, Buch, Kunde, Auftrag WHERE(Buch.Nr=Auftragspos.Buchnummer) AND (Auftragspos.Auftragsnummer=Auftrag.Nr) AND (Auftrag.Kundennummer = Kunde.Nr) AND Auftrag.Datum BETWEEN '2000-12-31' AND '2001-12-31' GROUP BY Kunde.Nr ORDER BY Kunde.Nr 4. Aufgabenstellung: Weiters wurde die Aufgabenstellung 3 um einen Filter erweitert - durchschnittliche Anzahl der Aufträge: AVG(Auftragspos.Menge) AS "durchschnitliche Aufträge" Lösung: SELECT Kunde.Nr, Kunde.Nachname,COUNT(DISTINCT Auftrag.Nr)AS Aufträge, SUM(Buch.Preis*Auftragspos.Menge) AS Umsatz, AVG(Auftragspos.Menge) AS "durchschnitliche Aufträge" FROM Kunde, Auftrag, Auftragspos, Buch WHERE(Buch.Nr=Auftragspos.Buchnummer) AND (Auftragspos.Auftragsnummer=Auftrag.Nr) AND (Auftrag.Kundennummer = Kunde.Nr) AND Auftrag.Datum BETWEEN '2000-12-31' AND '2001-12-31' GROUP BY Kunde.Nr ORDER BY Kunde.Nr ... comment |
Online for 6255 days
Last update: 2008.06.25, 12:45 status
You're not logged in ... login
menu
search
calendar
recent updates
6. Hausübung
Zusätzliche Ergänzungen und Ideen zu meinem... by Belma Avdic.Uni-Linz (2008.06.25, 12:45) 5. Hausübung
Aufgabenstellung: Greife by Belma Avdic.Uni-Linz (2008.05.26, 21:56) Javascript
Nach einigen Recherchen im Internet, kann ich die beiden... by Belma Avdic.Uni-Linz (2008.05.15, 13:59) Tutorium-Javascript
Auftragssuche nach Kundennummer Fehler... by Belma Avdic.Uni-Linz (2008.05.15, 13:47) |