Zum Inhalt springen
aviral gupta

// LERNEN · SPRACHEN & FRAMEWORKS

SQL

Ein praxisnaher SQL-Kurs mit PostgreSQL, von der ersten Tabelle bis zum Tuning von Abfragen, zum Absichern der Daten und zur Pflege einer Datenbank. Jede Abfrage wird mit PostgreSQL 18 ausgeführt und geprüft.

Niveau: Einstieg bis Vertiefung · Für: Entwickler, Analysten und alle, die verlässliche Antworten aus einer relationalen Datenbank wollen. Keine Vorkenntnisse nötig.

Lehrplan

Einstieg

Vollständig

Nach dieser Stufe können Sie

  • Tabellen mit passenden Typen und Constraints anlegen und Zeilen einfügen, ändern und löschen
  • SELECT-Abfragen mit WHERE, ORDER BY, LIMIT, Ausdrücken und Funktionen schreiben und NULL richtig behandeln
  • Tabellen mit Inner und Outer Joins verbinden, mit Aggregaten, GROUP BY und HAVING zusammenfassen und die gelieferten Zeilen vorhersagen
  • Mit psql eine Verbindung aufbauen, Skripte ausführen und ein Schema untersuchen
  1. B1Erste Schritte4 von 4 geschrieben · 4 LektionenBrowser und Ihr Rechner
  2. B2Abfragen auf einer Tabelle5 von 5 geschrieben · 5 LektionenBrowser und Ihr Rechner

    Fragen mit Filtern, Sortierung, Funktionen und korrekter NULL-Behandlung beantworten

    Sie bauen: Zehn Fragen an die Bibliothek beantworten

    1. B2.1SELECT und WHERE
    2. B2.2ORDER BY, LIMIT und OFFSET
    3. B2.3Ausdrücke und Textfunktionen
    4. B2.4NULL, IS NULL und COALESCE
    5. B2.5Projekt: zehn Fragen an die Bibliothek beantworten
  3. B3Joins und Aggregate6 von 6 geschrieben · 6 LektionenBrowser und Ihr Rechner

    Tabellen mit Joins verbinden und Daten mit Aggregaten, GROUP BY und HAVING zusammenfassen

    Sie bauen: Ein Ausleihbericht

    1. B3.1Joins, GROUP BY und NULL: vorhersagen, was SQL liefert
    2. B3.2Inner Joins
    3. B3.3Outer Joins
    4. B3.4Aggregatfunktionen und GROUP BY
    5. B3.5HAVING und FILTER
    6. B3.6Projekt: ein Ausleihbericht
  4. B4Daten und Schema ändern5 von 5 geschrieben · 5 LektionenBrowser und Ihr Rechner

    Zeilen ändern und das Schema mit Constraints und ALTER TABLE sicher weiterentwickeln

    Sie bauen: Das Bibliotheksschema weiterentwickeln

    1. B4.1UPDATE und DELETE
    2. B4.2RETURNING: die Zeilen, die Sie gerade geändert haben
    3. B4.3Constraints: Primärschlüssel, Fremdschlüssel, UNIQUE, CHECK
    4. B4.4ALTER TABLE und Standardwerte
    5. B4.5Projekt: das Bibliotheksschema weiterentwickeln

Projekt der Stufe Einstieg

Bibliotheksdatenbank

Ein Skript, das Bücher, Mitglieder und Ausleihen mit Schlüsseln und Constraints anlegt, Beispieldaten lädt und eine Reihe von Fragen mit Abfragen beantwortet.

Läuft im BrowserSelbst geprüft anhand einer Checkliste

Zur Projektanleitung

Aufbau

Demnächst verfügbar

Nach dieser Stufe können Sie

  • PostgreSQL-Datentypen richtig wählen und nutzen: Zahlen, Text, Datum und Uhrzeit mit Zeitzonen, JSONB, Arrays und Ranges
  • Unterabfragen, CTEs einschließlich rekursiver, Mengenoperationen und Fensterfunktionen schreiben
  • Views, Materialized Views, SQL- und PL/pgSQL-Funktionen und Trigger bauen
  • Transaktionen nutzen, Isolationsstufen und MVCC erklären und sichere Upserts schreiben
  1. I1Datentypen im DetailDemnächst verfügbar · 5 LektionenBrowser und Ihr Rechner

    Den passenden Typ wählen und Fallen bei Zahlen, Text, Zeitzonen und JSONB vermeiden

    Sie bauen: Ein Ereignisprotokoll-Schema mit Arrays und Ranges

    1. I1.1Demnächst verfügbar
    2. I1.2Demnächst verfügbar
    3. I1.3Demnächst verfügbar
    4. I1.4Demnächst verfügbar
    5. I1.5Demnächst verfügbar
  2. I2Fortgeschrittene AbfragenDemnächst verfügbar · 6 LektionenBrowser und Ihr Rechner

    Mehrstufige Abfragen und Ranglisten mit Unterabfragen, CTEs, Mengenoperationen und Fensterfunktionen schreiben

    Sie bauen: Eine Rangliste mit laufenden Summen

    1. I2.1Demnächst verfügbar
    2. I2.2Demnächst verfügbar
    3. I2.3Demnächst verfügbar
    4. I2.4Demnächst verfügbar
    5. I2.5Demnächst verfügbar
    6. I2.6Demnächst verfügbar
  3. I3Views, Funktionen und TriggerDemnächst verfügbar · 5 LektionenBrowser und Ihr Rechner

    Wiederverwendbare Logik mit Views, Funktionen und Triggern in die Datenbank legen

    Sie bauen: Ein Audit-Log-Trigger

    1. I3.1Demnächst verfügbar
    2. I3.2Demnächst verfügbar
    3. I3.3Demnächst verfügbar
    4. I3.4Demnächst verfügbar
    5. I3.5Demnächst verfügbar
  4. I4Transaktionen und NebenläufigkeitDemnächst verfügbar · 5 LektionenLäuft auf Ihrem Rechner

    Daten korrekt halten, wenn viele Sitzungen gleichzeitig schreiben

    Sie bauen: Eine sichere Überweisung

    1. I4.1Demnächst verfügbar
    2. I4.2Demnächst verfügbar
    3. I4.3Demnächst verfügbar
    4. I4.4Demnächst verfügbar
    5. I4.5Demnächst verfügbar

Projekt der Stufe Aufbau

Shop-Auswertung

Monatsumsatz und Top-Kunden je Monat mit Fensterfunktionen, eine Materialized View für ein Dashboard und ein Audit-Trigger auf orders.

Läuft auf Ihrem RechnerSelbst geprüft anhand einer Checkliste

Vertiefung

Demnächst verfügbar

Nach dieser Stufe können Sie

  • EXPLAIN-ANALYZE-Ausgaben lesen, mehrspaltige, partielle und Ausdrucksindizes wählen und Daten mit COPY effizient laden
  • Ein normalisiertes Schema mit Schlüsseln, Constraints, generierten Spalten, Schemas und Partitionierung entwerfen
  • Eine Datenbank mit Rollen, Rechten und Row-Level Security absichern, SQL-Injection verhindern und sichern und wiederherstellen
  • Volltextsuche und JSON-Path-Abfragen umsetzen und eine Datenbank mit VACUUM und Statistik-Views pflegen
  1. A1Indizes und AbfrageleistungDemnächst verfügbar · 6 LektionenLäuft auf Ihrem Rechner

    Langsame Abfragen mit EXPLAIN finden und mit den richtigen Indizes schnell machen

    Sie bauen: Fünf langsame Abfragen beschleunigen

    1. A1.1Demnächst verfügbar
    2. A1.2Demnächst verfügbar
    3. A1.3Demnächst verfügbar
    4. A1.4Demnächst verfügbar
    5. A1.5Demnächst verfügbar
    6. A1.6Demnächst verfügbar
  2. A2SchemaentwurfDemnächst verfügbar · 4 LektionenBrowser und Ihr Rechner

    Ein Schema entwerfen, das die Daten konsistent hält

    Sie bauen: Das Shop-Schema entwerfen

    1. A2.1Demnächst verfügbar
    2. A2.2Demnächst verfügbar
    3. A2.3Demnächst verfügbar
    4. A2.4Demnächst verfügbar
  3. A3Sicherheit und AdministrationDemnächst verfügbar · 5 LektionenLäuft auf Ihrem Rechner

    Zugriffe mit Rollen und Row-Level Security steuern und sich mit Sicherungen von Fehlern erholen

    Sie bauen: Mandantenfähige Daten mit Row-Level Security

    1. A3.1Demnächst verfügbar
    2. A3.2Demnächst verfügbar
    3. A3.3Demnächst verfügbar
    4. A3.4Demnächst verfügbar
    5. A3.5Demnächst verfügbar
  4. A4Suche, JSON und WartungDemnächst verfügbar · 4 LektionenLäuft auf Ihrem Rechner

    Volltextsuche ergänzen und eine Datenbank gesund halten

    Sie bauen: Büchersuche mit Ranking

    1. A4.1Demnächst verfügbar
    2. A4.2Demnächst verfügbar
    3. A4.3Demnächst verfügbar
    4. A4.4Demnächst verfügbar

Projekt der Stufe Vertiefung

Getunter, abgesicherter Shop

Die Shop-Datenbank mit größerem Datenbestand, Indizes auf Grundlage von EXPLAIN ANALYZE, Mandantentrennung per Row-Level Security und einer erprobten Sicherung und Wiederherstellung.

Läuft auf Ihrem RechnerSelbst geprüft anhand einer Checkliste

Abschlussprojekt

Abschlussprojekt

Datenbank für ein Buchungssystem

Ein Schema, dessen Constraints Doppelbuchungen verhindern, Funktionen für den Buchungsablauf, Berichte, Rollen, Suche und eine README für das Portfolio.

Läuft auf Ihrem RechnerSelbst geprüft anhand einer Checkliste

Quellen