SQL Fortgeschritten / Modernes SQL
Einleitung
Dieses Seminar richtet sich an erfahrene Datenbankanwender und Entwickler, die über die Grundlagen hinausgehen und moderne SQL-Features zur Lösung komplexer Analyse- und Abfrageprobleme einsetzen möchten. Viele Auswertungen, die sonst seitenweise Anwendungscode benötigen, lassen sich mit Window Functions, CTEs und modernen Join-Techniken direkt in der Datenbank lösen — kürzer, wartbarer und meist deutlich schneller. Die Durchführung erfolgt nach Wunsch auf SQL Server, PostgreSQL, DB2, Oracle, Sybase, SQLite, MySQL/MariaDB, Informix, HANA
Zielgruppe / Voraussetzungen
- Zielgruppe: Datenbankentwickler, Data Engineers, Datenanalysten, Softwareentwickler und BI-Spezialisten.
- Voraussetzungen: Sichere Beherrschung der SQL-Grundlagen (Joins, Aggregationen, Unterabfragen).
Detaillierte Inhalte
Erweiterte Abfragetechniken und Joins
- Zeilenübergreifende Auswertungen mit
LATERALJoins (bzw.CROSS APPLY) - Anti-Joins und Semi-Joins
Erweiterte Gruppierungen und Aggregationen
- Mehrdimensionale Analysen mit
GROUPING SETS - Zwischensummen und Gesamtsummen mit
ROLLUPundCUBE
Common Table Expressions (CTEs)
- Strukturierung komplexer Abfragen mit der
WITH-Klausel - Rekursive CTEs für hierarchische Daten (Bäume, Stücklisten, Graphen)
Window Functions (Analytische Funktionen)
- Funktionsweise der
OVER()-Klausel (PARTITION BY,ORDER BY) - Definition von Window Frames (
ROWSvs.RANGE) - Ranking-Funktionen (
ROW_NUMBER,RANK,DENSE_RANK,NTILE) - Offset-Funktionen für Zeitreihen- und Trendanalysen (
LAG,LEAD,FIRST_VALUE,LAST_VALUE)
Fortgeschrittene Datenmanipulation (DML)
- UPSERT-Strategien (
INSERT ... ON CONFLICT,MERGE) - Datenänderungen mit Rückgabewerten (
RETURNING/OUTPUT)
Spezielle Datentypen, Formate und Zeichensätze
- Sortierfolgen, Zeichencodierung und lokalisierte Vergleiche (Collation)
- JSON-Daten in SQL abfragen, extrahieren und manipulieren
- XML-Verarbeitungsgrundlagen in relationalen Systemen
Performance-Grundlagen für Entwickler
- Lese- und Interpretationsgrundlagen von Ausführungsplänen (Execution Plans)
- Sargable Queries (Suchargument-fähige Abfragen) schreiben
Ein Standard, viele Dialekte
Das Seminar arbeitet mit Standard-SQL und geht gezielt auf die Dialekt-Besonderheiten des von Ihnen gewählten Systems ein:
- SQL Server (T-SQL):
CROSS APPLY/OUTER APPLYstattLATERAL,MERGE,OUTPUT-Klausel, Ausführungspläne im Management Studio - PostgreSQL:
LATERAL-Joins,INSERT ... ON CONFLICT,RETURNING, JSONB-Abfragen,EXPLAIN (ANALYZE) - Oracle: Analytische Funktionen,
MERGE, hierarchische Abfragen (CONNECT BYvs. rekursive CTEs) - MySQL/MariaDB: Window Functions und CTEs (ab MySQL 8.0 / MariaDB 10.2),
INSERT ... ON DUPLICATE KEY UPDATE - DB2, SQLite, Sybase, Informix, HANA: Dialekt-Mapping der Kursinhalte auf Ihr System — inklusive der Frage, welche Features Ihre Version tatsächlich unterstützt
Wer täglich zwischen mehreren Systemen wechselt, lernt hier zusätzlich, welche Konstrukte portabel sind und wo Übersetzungsfallen lauern.
Ihr Nutzen
- Komplexe Auswertungen direkt in SQL statt in langsamen Anwendungsschleifen
- Lesbare, wartbare Abfragen durch CTEs statt verschachtelter Subquery-Kaskaden
- Ausführungspläne verstehen und Abfragen gezielt beschleunigen
- Portables Wissen: Standard-SQL plus die Dialekt-Unterschiede Ihres Systems
Häufige Fragen (FAQ)
Für welche Datenbanksysteme ist das Seminar geeignet?
Für alle verbreiteten relationalen Systeme: Microsoft SQL Server, PostgreSQL, Oracle, MySQL/MariaDB, IBM DB2, SQLite, Sybase, Informix und SAP HANA. Die Übungen finden auf dem System statt, das Sie im Alltag einsetzen.
Welche Vorkenntnisse brauche ich?
Sie sollten Joins, Aggregationen und Unterabfragen sicher anwenden können. Fehlen diese Grundlagen, ist das SQL-Grundlagen-Seminar der passende Einstieg.
Findet das Seminar vor Ort oder online statt?
Wahlweise vor Ort im Raum Köln/Leverkusen, als Inhouse-Schulung bei Ihnen im Unternehmen oder online — ganz nach Bedarf Ihres Teams.
Wie lange dauert das Seminar und ist es anpassbar?
Zwei Tage. Als Inhouse-Schulung passen wir Schwerpunkte und Beispiele an Ihre Datenbank, Ihre Version und Ihre realen Abfragen an.
Dauer: 2 Tage