ppt - Digitale Schule Bayern

Werbung
Abfragen – Tipps und Tricks
Buch S102ff
(Informatik I, Oldenbourg-Verlag)
Nach einer Vorlage von Dieter Bergmann
Wie kann man herausfinden, welche Kunden ein Buch
gekauft haben?
Mehrere Bedingungen können mit Hilfe der logischen
Operatoren UND, ODER und NICHT verknüpft werden.
In SQL:
AND, OR und NOT
SELECT Kunde.Name
FROM Kunde, Kauf, Artikel
WHERE Kunde.KundenNr=Kauf.KundenNr
AND Kauf.ArtikelNr=Artikel.ArtikelNr
AND Artikel.Sparte=`Buch´;
Wie kann man herausfinden, wie viele Artikel ein Kunde
gekauft hat?
Die Funktionen
COUNT(<Spalte>),
AVG(>Spalte>),
MAX(<Spalte>),
MIN(<Spalte>)
SUM(<Spalte>)
heißen Aggregatsfunktionen.
Sie können nach einen
SELECT-Abfrage stehen und
liefern ebenfalls eine Tabelle.
SELECT
Aggregatsfunktion
Erweiterung:
Mit GROUP BY können die Datensätze zusammengefasst
werden, bei denen Aggregatsfunktionen gleiche Ergebnisse
geliefert haben.
Gruppierungsangabe
SELECT
Gruppierung und eventuell
Bearbeitung von Aggregatsfunktion
Erweiterung:
Mit HAVING <Bedingung> können aus der Ergebnisliste
nochmals Datensätze ausgewählt werden, die bestimmte
Bedingungen erfüllen.
Gruppierungsangabe
Bedingung
SELECT
Gruppierung …
HAVING
Erweiterung:
Werte, die für eine Bedingung benötigt werden, können mit
Hilfe einer weiteren Abfrage ermittelt werden.
Dies nennt man eine Unterabfrage.
Beispiel:
SELECT Heim, MAX(Tore_H)
FROM Spiele
WHERE Tore_H=(SELECT MAX(Tore_H)
FROM Spiele);
Problem: Die Spaltenüberschriften in der Ergebnistabelle
ergeben nicht immer eine treffende Beschreibung
Mit AS <Name> können Spalten neu benannt werden.
SELECT irgendwas AS wichtig
FROM …
Zusammenfassung
Eine Abfrage kann folgendes Aussehen haben, wobei nicht
benötigte Teile auch fehlen können:
SELECT <Tabellenliste>
FROM <Spaltenliste>
WHERE <Bedingung>
ORDER BY <Spaltenliste>
GROUP BY <Spalte>
HAVING <Bedingung>;
Ergebnisse von Unterabfragen können im WHERE-Teil zur
Formulierung von Bedingungen verwendet werden.
Ergebnisse von Abfragen können als Mengen interpretiert
werden, der Enthält-Operator ist IN.
Zusammenfassung
Mit den Aggregatsfunktionen COUNT, AVG, SUM, MAX und
MIN lassen sich neue Informationen gewinnen.
Spalten in Ergebnistabellen können mit AS <Name>
beliebige Namen zugewiesen werden.
Aufgaben
Buch (Informatik I, Oldenbourg-Verlag)
S107/1-S109/10
Herunterladen