Sag's mit Struktur

Teil 6: Workshop: Datenbanken mit SQL abfragen

Noch eleganter gestalten Sie die SQL-Abfrage, indem Sie eine Gruppierung nach den CD-Titeln durchführen. Dadurch werden alle CD Titel zusammengefasst und zusätzlich die Gesamtspielzeit jeder CD berechnet und angezeigt. Zum Gruppieren benötigen Sie den SQLBefehl GROUP BY:

Workshop: Datenbanken mit SQL abfragen

© Archiv

SELECT Titel.CD_NUMMER, 
Sum(([Spielzeit])*24) AS 
Gesamtspielzeit 
FROM Titel 
GROUP BY Titel.CD_NUMMER

In der ersten Zeile (die ersten drei Druckzeilen) werden die Felder ausgewählt und die Berechnung der Spielzeit durchgeführt, die zweite Zeile legt fest, welche Tabelle abgefragt wird und die dritte Zeile gruppiert die Abfrage nach dem Feld der CD Nummer.

Eine weitere Verfeinerung der Ausgabe erhalten Sie, wenn Sie anstatt der CD-Nummer den CD-Titel auswerten. Dazu müssen Sie allerdings zwei Tabellen miteinander verbinden.

Über die DQL (Data Query Language), die einen weiteren Teil von SQL darstellt, kann ein Join (Verbund) der Tabellen CD und Titel hergestellt werden. Dadurch erhalten Sie eine Sicht auf den Inhalt beider Tabellen:

SELECT CD.CD_Titel, 
Sum(Titel.Spielzeit)*24 AS 
["Gesamtspielzeit der CD in Stunden"] 
FROM 
CD INNER JOIN Titel ON CD.CD_NUMMER = 
Titel.CD_NUMMER 
GROUP BY CD.CD_Titel

Es kann vorkommen, dass Sie neue CDs einpflegen, ohne sofort die Titelliste mit einzugeben. In diesem Fall gibt es Schwierigkeiten mit der SQL-Abfrage. Diese reagiert stur: Wenn Sie nichts eingeben, kommt nichts raus.

Das liegt daran, dass die Verknüpfung INNER JOIN nur dann einen Datensatz ausgibt, wenn gleiche CD-Nummern in beiden Tabellen vorhanden sind. CDs, für die Sie keine Titel eingegeben haben, zeigt der Befehl LEFT JOIN.

SELECT CD.CD_Titel, 
Sum(Titel.Spielzeit)*24 AS 
["Gesamtspielzeit der CD in Stunden"] 
FROM CD LEFT JOIN Titel ON 
CD.CD_NUMMER = Titel.CD_NUMMER 
GROUP BY CD.CD_Titel;

Mehr zum Thema

HTML 5
Webgestaltung

Google Web Designer ist spezialisiert auf HTML5. Ein Vorteil dieses Standards ist das einfache Einbinden von Videos mit dem Element video. Wir zeigen…
Wir verraten, wie Sie Fritzboxen und andere Router vor Hackern schützen.
Fritzbox, Asus, Belkin und Co.

Fritzbox, Asus, Belkin oder DLink - die Liste der geknackten Router ist lang. Hacker stahlen Passwörter oder NAS-Daten. So machen Sie Ihren Router…
Wir führen Sie zur eigenen Windows-App - unserem PC-Magazin-RSS-Feed.
C# und XAML

Wir zeigen, wie Sie Windows 8.1 Apps selbst programmieren können. Lernen Sie das App erstellen an Hand unseres Beispiels: dem RSS-Feed von PC…
Windows Tipps & Tricks: Benutzerrechte unter Windows 8.1
Programme richtig installieren

Wir zeigen Ihnen, wie Sie sich unter Windows 8.1 alle Benutzerrechte verschaffen und Programme richtig installieren.
Windows 8: Starbildschirm
Microsoft Project Siena

Erstellen Sie sich selbst eine App für Windows 8, die auf alle Funktionen Ihres Tablets zugreifen kann, inklusive Kamera, Mikrofon und Lautsprecher.…