SQL Data Query Language (DQL)

Fallunterscheidungen und NULL-Werte in SQL-Abfragen (CASE, IF, COALESCE)

Mit den Ablaufsteuerungsfunktionen von SQL triffst Du Entscheidungen innerhalb einer Abfrage: CASE WHEN … END und IF() geben je nach Bedingung unterschiedliche Werte aus, COALESCE und IFNULL ersetzen fehlende Werte, NULLIF erzeugt gezielt NULL. Der Artikel zeigt die Funktionen in Projektion, Sortierung und Bedingungen und nennt die Schreibweisen anderer DBMS.

Übungsaufgaben zu einfachen SQL-Abfragen (Selektion, Projektion, Sortierung, Funktionen)

Drei Übungsaufgaben zu einfachen SELECT-Abfragen auf einer Tabelle – mit Spaltenauswahl und Aliasen, Bedingungen mit LIKE, BETWEEN, IN und NULL, Zählen, DISTINCT, den ersten n Zeilen, Vergleich mit dem Durchschnitt, Sortierung, Zeichenketten- und Datumsfunktionen, Postleitzahlen als Text, der Einordnung in DDL/DML/DQL sowie typischen Fehlern.

Sortieren und Begrenzen von Abfrageergebnissen (ORDER BY, LIMIT)

Mit ORDER BY legst Du die Reihenfolge der Ergebniszeilen fest – nach mehreren Spalten, auf- oder absteigend, auch nach Aliasen und Ausdrücken. Mit LIMIT gibst Du nur die ersten Zeilen aus, etwa für Ranglisten, Seiten oder das jüngste Mitglied. Der Artikel zeigt außerdem die typischen Stolperfallen: Sortieren „nach Alter“, Zahlen als Text, NULL-Werte und Gleichstand.

Übungsaufgaben zu SQL-Abfragen über mehrere Tabellen (JOIN)

Fünf Übungsaufgaben zu Verbünden über mehrere Tabellen – vom einfachen INNER JOIN über LEFT, RIGHT und nachgebauten FULL JOIN bis zu Tabellen in mehreren Rollen, zusammengesetzten Join-Bedingungen, Anti-Joins, Vervielfachung beim Zählen sowie UPDATE und DELETE mit JOIN, außerdem Zeitspannen-Auswertungen, DISTINCT-Abfragen und Verbünde mit pandas.

SQL: Abfragen über mehrere Tabellen mit JOIN

In relationalen Datenbanken sind zusammengehörige Daten auf mehrere Tabellen verteilt. Mit JOIN fügst Du sie in einer Abfrage wieder zusammen: Der innere Verbund liefert nur Zeilen mit Partner, die äußeren Verbünde (LEFT, RIGHT, FULL) auch Zeilen ohne Partner. Der Artikel zeigt Kreuzprodukt, Join-Bedingungen über mehrere Tabellen und Spalten, Selbstverknüpfung, Anti-Join, die Falle „Bedingung in WHERE statt ON“, Vervielfachung beim Zählen sowie UPDATE und DELETE mit JOIN in MariaDB.

SQL-Übungsaufgaben (Orga-Datenbank für ein Barcamp)

Übungsaufgaben zur Datenbank-Modellierung und einfachen SQL-Abfragen am Beispiel einer Datenbank für die Planung eines Kongresses. Die einzelnen Schritte werden exemplarisch (an Teilbereichen der Datenbank) abgefragt. Die Aufgaben waren Bestandteil einer klassischen Zettel/Stift Klassenarbeit. Es soll ein konzeptuelles Datenmodell erstellt werden, dieses soll in ein logisches Datenmodell transformiert werden. Das Relationenschema soll normalisiert werden, schließlich soll die Datenstruktur erstellt und die Daten einer Tabelle eingefügt, geändert, gelöscht und ausgelesen werden.

SQL: Aggregierende Funktionen

Aggregatfunktionen wie COUNT, SUM, AVG, MIN und MAX fassen die Werte vieler Zeilen zu einem Wert zusammen – für die ganze Tabelle oder mit GROUP BY je Gruppe. Mit HAVING filterst Du nach diesen Ergebnissen. Der Artikel zeigt außerdem, wie NULL-Werte, Verbünde (JOIN) und Prozentrechnungen die Ergebnisse beeinflussen, wie Du mit Aggregaten weiterrechnest (z. B. Deckungsbeitrag), Streuung und Zeitdauern auswertest und welche Fehler typisch sind.

Einfache Abfragen mit Selektion und Projektion (SQL-DQL)

Der am häufigsten benötigte SQL-Befehl ist der SELECT-Befehl. In diesem Grundlagenartikel werden die Bestandteile Projektion und Selektion sowie die einzelnen Clauses einfacher SELECTs beschrieben. Dazu gehören Spaltenaliase, Bedingungen mit Mustern, Bereichen und NULL – samt der typischen Stolperfallen bei Postleitzahlen, Datumswerten und Umlauten. Sortieren und Begrenzen behandelt ein eigener Artikel.