Florian Heindls IV2-Weblog
Donnerstag, 21. Juni 2007
Übung: SQL Abfragen
1) Kurzbez., Name, Plz aller Verlage mit der PLZ 4020

Select Verlag.Kurzbezeichnung, Verlag.Name, Verlag.Plz
from Verlag, PLZ
where Verlag.Plz=PLZ.Plz and Verlag.Plz=4020

2) Autor, Titel, Preis aller Bücher, die auslaufend sind

Select Buch.Nr, Buch.Autor, Buch.Titel, Buch.Preis
from Buch
where Buch.Auslaufend="y"

3) Alle Kunden mit PLZ 4040

Select *
from Kunde
where Kunde.Plz=4040

4) Alle Spalten der Tabelle Auftrag und Vorname und Nachname des Kunden

Select Auftrag.Nr, Auftrag.Datum, Auftrag.Kundennummer, Kunde.Vorname, Kunde.Nachname
from Auftrag, Kunde
where Auftrag.Kundennummer=Kunde.Nr
group by Auftrag.Nr
order by Kunde.Nr

5) Autor, Titel, Preis aus Tabelle Buch, Name aus Verlag

Select Buch.Autor, Buch.Titel, Buch.Preis, Verlag.Name
from Buch, Verlag
where Buch.Verlag=Verlag.Kurzbezeichnung
order by Buch.Autor desc

6) Alles von Tabelle Artikel, Preis und Titel der Tabelle Buch

Select Auftragspos.*, Buch.Titel, Buch.Preis
from Auftragspos, Buch
where Auftragspos.Buchnummer=Buch.Nr
order by Auftragspos.Auftragsnummer

7) größter, kleinster, durchschnittlicher Buchpreis je Verlag

Select Buch.Verlag, Verlag.Name, min(Buch.Preis) as Mindestpreis
from Buch, Verlag
where Buch.Verlag=Verlag.Kurzbezeichnung
group by 1

8) Auftragsanzahl je Kunde

Select Kunde.Nr, Kunde.Vorname, Kunde.Nachname, count(Auftrag.Nr) as Kundenaufträge
from Kunde, Auftrag
where Kunde.Nr=Auftrag.Kundennummer
group by Kunde.Nr
order by Kundenaufträge desc

9) Alle Auftragspositionen für Auftrag 1 + Gesamtpreis je Position

Select Auftragspos.Nr, Auftragspos.Buchnummer, Buch.Titel, Buch.Autor, Auftragspos.Menge, Buch.Preis, Auftragspos.Menge*Buch.Preis as Gesamtpreis from Buch, Auftragspos where Auftragspos.Buchnummer=Buch.Nr and Auftragspos.Auftragsnummer=1 order by Auftragspos.Nr

10) Auftragssumme für Auftrag 1

Select Auftrag.Nr, sum(Auftragspos.Menge*Buch.Preis) as Auftragssumme
from Auftrag, Auftragspos, Buch
where Auftrag.Nr=Auftragspos.Auftragsnummer and Auftragspos.Buchnummer=Buch.Nr and
Auftrag.Nr=1
group by Auftrag.Nr

11) Auftragsübersicht

Select Auftrag.Nr, Auftrag.Datum, Auftrag.Kundennummer, Kunde.Vorname, Kunde.Nachname, sum(Auftragspos.Menge*Buch.Preis) as Auftragsumsatz
from Kunde, Auftrag, Auftragspos, Buch
where Kunde.Nr=Auftrag.Kundennummer and Auftrag.Nr=Auftragspos.Auftragsnummer and Auftragspos.Buchnummer=Buch.Nr
group by Auftrag.Nr
order by Auftragsumsatz desc

12) Kundenumsatz: Gesamtsumme aller Umsätze des Kunden mit Kundennummer 1

Select Kunde.Nr, Kunde.Vorname, Kunde.Nachname, sum(Auftragspos.Buchnummer*Buch.Preis) as Gesamtauftragssumme
from Kunde, Auftrag, Auftragspos, Buch
where Kunde.Nr=Auftrag.Kundennummer and Auftrag.Nr=Auftragspos.Auftragsnummer and Auftragspos.Buchnummer=Buch.Nr
and Auftrag.Kundennummer=1
group by Kunde.Nr

13) Kundenstatistik:

Select Kunde.Nr, Kunde.Nachname, sum(Auftragspos.Menge*Buch.Preis) as Kundenumsatz, count(distinct Auftrag.Nr) as Auftragsanzahl
from Kunde, Auftrag, Auftragspos, Buch
where Kunde.Nr=Auftrag.Kundennummer and Auftrag.Nr=Auftragspos.Auftragsnummer and Auftragspos.Buchnummer=Buch.Nr
group by Kunde.Nr
order by Kundenumsatz desc

14) Liste aller Kunden, deren Nachname mit "A" beginnt

Select * from Kunde
where Kunde.Nachname like "A%"

15. Anzahl der Bücher des Verlags mit der Kurzbezeichnung "b"

Select Verlag.Kurzbezeichnung, Verlag.Name, count(Buch.Nr) as Bücheranzahl
from Verlag, Buch
where Verlag.Kurzbezeichnung=Buch.Verlag and Verlag.Kurzbezeichnung="b"
group by Verlag.Kurzbezeichnung

16. Anzahl der Bücher je Verlag, Absteigend nach Anzahl

Select Buch.Verlag, count(Buch.Nr) as Buchanzahl
from Buch
group by Buch.Verlag
order by 2 desc

17. Verlagsstatistik

Select Buch.Verlag, count(Buch.Nr) as Buchanzahl, min(Buch.Preis), max(Buch.Preis), avg(Buch.Preis)
from Buch
group by Buch.Verlag
Order by 1

19. Verlagsstatistik

Select Buch.Verlag, Verlag.Name, count(Buch.Nr) as Buchanzahl, min(Buch.Preis), max(Buch.Preis), avg(Buch.Preis)
from Buch, Verlag
where Buch.Verlag=Verlag.Kurzbezeichnung
group by Buch.Verlag

20. Anzahl der Verkäufe und Verkaufte Menge des Buches mit der Nummer 1

Select Buch.Nr, Buch.Titel, count(Auftragspos.Menge) as Anzahl_Verkäufe, sum(Auftragspos.Menge) as Menge_Verkäufe
from Buch, Auftragspos
where Buch.Nr=Auftragspos.Buchnummer and Auftragspos.Buchnummer=1
group by 1

21.Buchübersicht

Select Buch.Nr, Buch.Titel, Buch.Autor, Buch.Preis, count(Auftragspos.Auftragsnummer) as Verkäufe, sum(Auftragspos.Menge) as Verkaufsmenge
from Buch, Auftragspos
where Buch.Nr=Auftragspos.Buchnummer
group by Buch.Nr
order by Buch.Preis

22. Auswertung für Buch Nr. 1: Titel, Autor, Preis, Anzahl der Verkäufe, bei denen mehr als 3 Stück verkauft wurden

Select Buch.Nr, Buch.Titel, Buch.Autor, Buch.Preis, count(Auftragspos.Auftragsnummer) as Verkäufe, sum(Auftragspos.Menge) as Menge
from Buch, Auftragspos
where Buch.Nr=Auftragspos.Buchnummer
and Buch.Nr=1
and Menge>3
group by Buch.Nr
order by Buch.Preis

23. Anzahl der Verkäufe je Buch, wenn die Anzahl der Verkäufe > 3 ist

Select Buch.Nr, Buch.Titel, count(Auftragspos.Auftragsnummer) as Verkäufe, sum(Auftragspos.Menge) as Menge
from Buch, Auftragspos
where Buch.Nr=Auftragspos.Buchnummer
group by Buch.Nr
having count(Auftragspos.Auftragsnummer)>3
order by Buch.Preis

24. Liste aller Autoren, aufsteigend sortiert

Select Buch.Autor
from Buch
group by 1


25. Anzahl der unterschiedlichen Autoren je Verlag

Select Buch.Verlag, Verlag.Name, count(distinct Buch.Autor) as Autorenanzahl
from Buch, Verlag
where Verlag.Kurzbezeichnung=Buch.Verlag
group by 1

26. Liste der auslaufenden Bücher, deren Bestand >0 ist

Select Buch.Nr, Buch.Titel, Buch.Bestand
from Buch
where Buch.Auslaufend="y"
and Buch.Bestand>3
group by Buch.Nr

27. Liste aller Bücher, deren Preis zwischen 10 und 20 liegt

Select Buch.Nr, Buch.Titel, Buch.Preis
from Buch
where Buch.Preis between 10 and 20
group by Buch.Nr

28. Anzahl der Bücher je Autor, absteigend nach Anzahl sortiert

Select Buch.Autor, count(Buch.Nr) as Buchanzahl
from Buch
group by Buch.Autor
order by 2 desc

29. Liste aller Englisch-Bücher, bestehend aus Titel, Autor, Verlag, aufsteigend nach Titel sortiert

Select Buch.Titel, Buch.Autor, Buch.Verlag
from Buch
where Buch.Titel like "%englisch%"
order by 1

30. Liste aller Verlage in der Region O (Oberöstereich), alphabetisch nach Name sortiert

Select Verlag.Kurzbezeichnung, Verlag.Name
from Verlag, PLZ
where PLZ.Plz=Verlag.Plz and PLZ.Region="o"
group by 1


31. Liste aller Kunden in der Region W, alphabetisch nach Namen sortiert

Select Kunde.*, PLZ.Ort
from Kunde, PLZ
where PLZ.Plz=Kunde.Plz
and PLZ.Region="w"
order by Kunde.Nachname

32. Alle schlechten Kunden nach Umsatz sortiert von Jänner bis Juni 2000.

Select Kunde.Nr, Kunde.Vorname, Kunde.Nachname, sum(Buch.Preis*Auftragspos.Menge) as Umsatz
from Kunde, Auftrag, Auftragspos, Buch
where Kunde.Nr=Auftrag.Kundennummer and Auftrag.Nr=Auftragspos.Auftragsnummer and Auftragspos.Buchnummer=Buch.Nr and Auftrag.Datum between '2000-01-01*' and '2000-06-30*'
group by Kunde.Nr
order by Umsatz

33. Jahresumsätze nach Jahren gegliedert

SELECT YEAR(Datum), Sum(Auftragspos.Menge*Buch.Preis) AS Umsatz FROM Auftrag, Auftragspos, Buch Where Auftrag.Nr=Auftragspos.Auftragsnummer AND Auftragspos.Buchnummer=Buch.Nr GROUP BY YEAR(Datum)

34. Wichtigste Lieferanten

Select Verlag.Name, Verlag.Plz, PLZ.Ort, SUM(Buch.Preis*Auftragspos.Menge) AS Umsatz, COUNT(Auftrag.Nr) AS AnzahlAufträge
From Verlag, Buch, Auftragspos, PLZ, Auftrag Where Verlag.Plz=PLZ.Plz AND Verlag.Kurzbezeichnung=Buch.Verlag AND Buch.Nr=Auftragspos.Buchnummer AND Auftragspos.Auftragsnummer=Auftrag.Nr
Group by Verlag.Name Order by 4 DESC

... comment

Online for 6458 days
Last update: 2007.06.29, 15:17
status
You're not logged in ... login
menu
... home
... topics
... galleries

... ::collabor:: home
search
 
calendar
Juni 2007
Mo
Di
Mi
Do
Fr
Sa
So
 
 
 
 
 1 
 2 
 3 
 4 
 6 
 7 
 8 
 9 
10
11
12
13
14
15
16
17
18
20
22
23
24
26
27
29
30
 
 
 
recent updates
6. Hausübung
Angabe zu Hausübung 6b) Remodellieren Sie das...
by Florian.Heindl.Uni-Linz (2007.06.29, 15:17)
Übung: SQL Abfragen
1) Kurzbez., Name, Plz aller Verlage mit der PLZ 4020 Select...
by Florian.Heindl.Uni-Linz (2007.06.26, 09:30)
Übung Buttons, Javascript...
Button mit einfacher SQL-Abfrage Drop-Down...
by Florian.Heindl.Uni-Linz (2007.06.25, 09:57)
Tutorium19. Juni
Abfrage 1) Umsatz je Region, absteigend Select PLZ.Region,...
by Florian.Heindl.Uni-Linz (2007.06.19, 13:18)
5. Tutorium - 5. Juni...
Buchtitel Verlag: Bohmann Druck und Verlags GesmbH...
by Florian.Heindl.Uni-Linz (2007.06.05, 13:11)

xml version of this page

made with antville