Zurück zur Artikelliste Artikel
10 Leseminuten

5 SQL-Lektionen, die Sie vor Jahresende lernen sollten

Viele SQL-Lernende bleiben zwischen Anfänger- und Fortgeschrittenenstufe stecken – Abfragen funktionieren, aber nicht immer wie erwartet. Diese fünf Lektionen schließen die Lücken, die die meisten Lernenden noch haben, und stärken Ihre SQL-Kenntnisse noch vor Jahresende.

Wenn das Jahr zu Ende geht, beginnen viele Lernende darüber nachzudenken, was sie erreicht haben – und was noch auf ihrer Lernliste steht. Wenn Sie sich schon eine Weile mit SQL beschäftigen, haben Sie wahrscheinlich bereits einige Abfragen geschrieben, Tabellen verknüpft und Ergebnisse gefiltert. Aber wenn Sie ehrlich sind, gibt es immer noch ein paar Dinge, die Ihnen unangenehm sind.

Das ist normal. Jeder SQL-Lernende kommt irgendwann an diesen Punkt – irgendwo zwischen Anfänger und Fortgeschrittenem –, an dem man zwar funktionierende Abfragen schreiben kann, aber nicht immer versteht, warum sie funktionieren. Man bekommt zwar eine Antwort, aber nicht immer die richtige.

Im Laufe der Jahre habe ich festgestellt, dass den meisten Lernenden tendenziell dieselben fünf Fähigkeiten fehlen. Es handelt sich dabei nicht um fortgeschrittene Themen, aber sie sind es, die Sie selbstbewusst, flexibel und bereit für die Arbeit mit Daten in der Praxis machen. Bevor das Jahr zu Ende geht, finden Sie hier fünf SQL-Lektionen, die es sich zu meistern lohnt.

1. Lernen Sie endlich LEFT JOIN und FULL JOIN

Anfänger lernen INNER JOIN in der Regel gut – aber LEFT JOIN und FULL JOIN bleiben oft ein Rätsel. Viele Lernende vermeiden sie, weil sie nicht verstehen, wie sie funktionieren, und vor allem nicht erkennen, wann sie tatsächlich benötigt werden.

In realen Datenbanken sind Daten jedoch selten vollständig. Kunden haben nicht immer Bestellungen. Produkte haben nicht immer Bewertungen. Deshalb sind diese Verknüpfungen wichtig – sie ermöglichen es Ihnen, vollständige Daten zu analysieren, nicht nur perfekte Daten.

Im realen Leben sollten Sie verstehen, wie LEFT JOIN und FULL JOIN funktionieren und wann Sie sie jeweils verwenden sollten:

  • LEFT JOIN alle Zeilen aus der linken (ersten) Tabelle zurückgibt, auch wenn es keine Übereinstimmungen in der anderen Tabelle gibt.
  • FULL JOIN gibt alle Zeilen aus beiden Tabellen zurück, auch wenn es auf keiner Seite Übereinstimmungen gibt.

Beispiel:

SELECT 
  c.customer_id, 
  c.name, 
  o.order_id
FROM customers c
LEFT JOIN orders o 
ON c.customer_id = o.customer_id;

Diese Abfrage listet alle Kunden auf, einschließlich derjenigen, die keine Bestellungen aufgegeben haben – etwas, das INNER JOIN übersehen würde.

Es ist an der Zeit, in den sauren Apfel zu beißen und diese Verknüpfungen endlich zu lernen. Sobald Sie das getan haben, werden Ihre Analysen viel genauer und vollständiger.

Wo Sie es lernen können:

UnserSQL-JOINs Kurs bietet Ihnen umfangreiche praktische Übungen zu allen Arten von Joins – über 90 angeleitete und nicht angeleitete Übungen, die sich ausschließlich auf das Beherrschen von Joins konzentrieren. Sie lernen, welchen Join Sie in welchem Szenario verwenden müssen, und gewinnen das Selbstvertrauen, komplexe Abfragen ohne Rätselraten zu bearbeiten. Wenn Sie diesen Monat ein Konzept vertiefen möchten, dann sollte es dieses sein.

2. HAVING: Verwechseln Sie es nicht mit WHERE

Ein weiteres sogenanntes „fortgeschrittenes” Konzept ist HAVING. Ich setze das in Anführungszeichen, weil jeder SQL-Profi lachen würde, wenn man es als fortgeschritten bezeichnen würde – aber für viele Anfänger ist es eines der schwierigeren Konzepte, die es zu beherrschen gilt.

HAVING wird zum Filtern von Gruppen verwendet, nicht von einzelnen Zeilen. Es hilft Ihnen bei der Arbeit mit aggregierten Bedingungen wie Anzahlen, Summen oder Maximalwerten – also der Art von Logik, die Sie in fast jeder analytischen Abfrage verwenden werden.

Verstehen, wann WHERE und wann HAVING zu verwenden, ist für eine seriöse Analyse von entscheidender Bedeutung:

  • Verwenden Sie WHERE zum Filtern von Zeilen vor
  • Verwenden Sie HAVING zum Filtern von Gruppen nach

Das Lernen HAVING vermittelt Ihnen außerdem ein tieferes Verständnis dafür, wie Datenbanken Abfragen intern verarbeiten – und dieses Wissen ist von unschätzbarem Wert, wenn Sie Ihren eigenen Code optimieren oder debuggen.

Beispiel:

SELECT product_id, COUNT(*) AS total_orders
FROM sales
GROUP BY product_id
HAVING COUNT(*) > 100;

Diese Abfrage findet Produkte mit mehr als 100 Verkäufen – etwas, das WHERE nicht verarbeitet werden kann, da die Gruppen erst nach der Gruppierung existieren.

Wo Sie das lernen können:
Unser SQL GROUP BY-Praxiskurs bietet Ihnen Dutzende von Übungen mit Schwerpunkt auf Gruppierung, Aggregation und HAVING. Dies ist der schnellste Weg, um nicht mehr raten zu müssen, wann welche Klausel zu verwenden ist, und stattdessen mit Zuversicht korrekte analytische Abfragen zu schreiben.

3. Wie Vergleiche mit NULL wirklich funktionieren

Das sieht einfach aus – bis Ihre Ergebnisse keinen Sinn ergeben. Diese Fehler machen Ihre Abfrage nicht unbrauchbar, aber sie liefern Ihnen stillschweigend falsche Antworten – und das ist noch schlimmer.

Das einfachste Beispiel: Sie schreiben WHERE email = NULL und erhalten keine Ergebnisse. Ein etwas raffinierteres Beispiel: WHERE age > 18 – dies schließt Kunden aus, deren Alter nicht festgelegt ist.

Das liegt daran, dass NULL sich nicht wie andere Werte verhält. Es steht für „unbekannt”, und der Vergleich von irgendetwas mit „unbekannt” liefert niemals TRUE. SQL verwendet eine dreistufige Logik: TRUE, FALSE, und UNKNOWN. Wenn Sie verstehen, wie SQL damit umgeht NULL , erspart Ihnen stille Logikfehler. = NULL wird immer zu UNKNOWN, filtert also nichts. Deshalb müssen Sie IS NULL or IS NOT NULL.

Um Benutzer ohne E-Mail-Adresse zu finden, schreiben Sie:

WHERE email IS NULL

Um Benutzer zu finden, die eine E-Mail-Adresse haben, schreiben Sie:

WHERE email IS NOT NULL

Es ist nur eine kleine Änderung, aber wenn Sie sie verstehen, begreifen Sie eine der grundlegendsten Regeln von SQL – etwas, worüber viele Entwickler nie nachdenken.

Um mehr darüber zu erfahren, wie NULL funktioniert und warum Vergleiche schwierig sein können, lesen Sie unseren Artikel NULL-Vergleichsoperatoren in SQL.

Wo Sie dies lernen können:

UnserStandard-SQL-FunktionenKurs enthält ein spezielles Modul zu diesem Thema NULL. Sie lernen, wie Sie häufige Fehler mit fehlenden Werten vermeiden und wie Sie Funktionen wie COALESCE, IFNULLund NULLIF richtig umzugehen. Dieser Kurs hilft Ihnen zu verstehen, wie NULL sich in Ausdrücken und Aggregaten verhält, sodass Ihre Abfragen immer genaue Ergebnisse liefern.

4. Korrelierte Unterabfragen

Einige Anfänger lieben Unterabfragen und versuchen, alles damit zu machen. Andere haben Angst vor ihnen und vermeiden sie komplett. Aber eines ist fast universell – sowohl Anfänger als auch viele fortgeschrittene Benutzer fürchten korrelierte Unterabfragen.

Korrelierte Unterabfragen sind Unterabfragen, die auf die äußere Abfrage verweisen und nicht eigenständig ausgeführt werden können. Sie sind von der aktuellen Zeile der äußeren Abfrage abhängig, was sie sowohl komplexer als auch leistungsfähiger macht.

Das macht ihre Stärke aus: Sie können damit Probleme lösen, die sonst mehrere Schritte oder temporäre Tabellen erfordern würden. Andererseits erfordert ihre korrekte Verwendung ein Verständnis dafür, wie eine Datenbank eine Abfrage Schritt für Schritt verarbeitet.

Beispiel:

SELECT name, department_id, salary
FROM employees e
WHERE salary > (
  SELECT AVG(salary)
  FROM employees
  WHERE department_id = e.department_id
);

Diese Abfrage findet Mitarbeiter, die mehr als das Durchschnittsgehalt in ihrer Abteilung verdienen – eine häufige Aufgabe in der Praxis, die ohne eine korrelierte Unterabfrage schwer zu formulieren ist.

Es lohnt sich, dies zu lernen, auch wenn es zunächst einschüchternd wirkt. Sobald Sie verstanden haben, wie korrelierte Unterabfragen funktionieren, werden Sie erkennen, dass sie Ihnen völlig neue Möglichkeiten zur Lösung von SQL-Problemen eröffnen.

Wo Sie es lernen können:

Unser Kurs „SQL-Unterabfragen” hilft Ihnen dabei, von „Ich verstehe Unterabfragen irgendwie” zu selbstbewusstem Schreiben sowohl einfacher als auch korrelierter Unterabfragen zu gelangen. Er bietet umfangreiche praktische Übungen und sofortiges Feedback, sodass Sie lernen, wann und wie Sie die einzelnen Typen verwenden, während Sie Schritt für Schritt sehen, wie SQL sie verarbeitet. Sobald Sie dieses Konzept beherrschen, macht plötzlich ein großer Teil von SQL Sinn.

5. Wie man eine Datenbank erkundet

Dies ist eine der Fähigkeiten, die Anfänger von fortgeschrittenen SQL-Anwendern unterscheidet. Anfänger können Abfragen schreiben, wenn sie die Struktur einer Datenbank bereits kennen – aber wenn sie mit einer unbekannten Datenbank konfrontiert werden, wissen sie oft nicht, wo sie anfangen sollen. Sie erhalten nicht immer ein Diagramm oder eine Dokumentation, die erklärt, wie alles zusammenhängt.

Die meisten SQL-Kurse überspringen diesen Teil komplett, doch er ist für die praktische Arbeit unerlässlich. Wenn Sie wissen, wie Sie eine Datenbank selbst erkunden können, gewinnen Sie Unabhängigkeit und Selbstvertrauen. Sie können die richtigen Daten finden, die Beziehungen zwischen Tabellen verstehen und Ihre Abfragen planen, ohne darauf warten zu müssen, dass Ihnen jemand die Struktur erklärt.

So sieht die Erkundung einer Datenbank in der Praxis aus:

  • Identifizieren Sie, welche Tabellen und Spalten vorhanden sind – beginnen Sie damit, sich mit der Gesamtstruktur der Datenbank vertraut zu machen.
  • Finden Sie die richtigen Tabellen und Spalten – suchen Sie heraus, wo die für Ihre Analyse relevanten Daten gespeichert sind.
  • Überprüfen Sie einige Beispielzeilen – führen Sie
    SELECT * FROM customers LIMIT 5;
    aus, um zu sehen, wie die Daten aussehen.
  • Überprüfen Sie die Zeilenanzahl – verschaffen Sie sich einen Überblick über die Größe der einzelnen Tabellen.
  • Sehen Sie sich die Minimal- und Maximalwerte an – verschaffen Sie sich einen Überblick über die Datenbereiche (z. B. früheste und späteste Daten).
  • Überprüfen Sie die Werteverteilung – erkennen Sie Duplikate, fehlende Werte oder Ausreißer.
    Skizzieren Sie Ihr eigenes Diagramm – stellen Sie die Beziehungen zwischen den Tabellen dar, um zu visualisieren, wie die Datenbank zusammenpasst.

Wenn Sie eine praktische Anleitung zu diesem Prozess wünschen, lesen Sie „How to Explore a Database: The Northwind Project“, in dem jeder Schritt anhand eines realen Datensatzes detailliert beschrieben wird.

Wo Sie dies lernen können:

In unserem Kurs „SQL-Datenbanken für die Praxis“ können Sie reale Datenbanken sicher erkunden. Es handelt sich nicht um einen Kurs mit Übungen, sondern um eine Sandbox mit Beispieldatenbanken, mit denen Sie experimentieren können. Sie erkunden die Struktur selbst, stellen Ihre eigenen Fragen und finden selbst die Antworten.

Wenn Ihnen die Erkundung von Datenbanken Angst macht, wird dieser Kurs diese Angst vollständig beseitigen.

Sie trauen sich nicht, anzufangen? Schauen Sie sich unsere geführten Kurse imSQL-PraxisTrack an. Sie enthalten typische Übungen für viele Datenbanken. Sobald Sie sich sicherer fühlen, kehren Sie zum Kurs „SQL-Datenbanken für die Praxis” zurück und erkunden Sie ihn nach Belieben.

Jahresrückblick: Warum diese fünf Lektionen wichtig sind

Diese Lektionen sind nicht nur „nice to have“. Sie sind die Kernkonzepte, die Sie von einem Anfänger, der Anweisungen befolgen kann, zu einem Analysten machen, der Probleme selbstständig lösen kann.

Überlegen Sie, was Ihnen das Beherrschen dieser Lektionen bringt:

  • Sie können Daten aus mehreren Quellen kombinieren, ohne die Abfragen zu unterbrechen.
  • Sie können gruppierte Daten korrekt analysieren.
  • Sie können fehlende Werte ohne stille Fehler verarbeiten.
  • Sie können Unterabfragen verwenden, um komplexe Fragen elegant zu beantworten.
  • Sie können neue Datenbanken mit Zuversicht erkunden.

Dies sind die Fähigkeiten, die Sie in jedem datengesteuerten Team nützlich machen.

So verwenden Sie diese Liste:

Versuchen Sie nicht, alle fünf Konzepte auf einmal zu lernen. Wählen Sie ein Konzept aus, beschäftigen Sie sich einige Tage lang intensiv damit und üben Sie, bis es Ihnen in Fleisch und Blut übergegangen ist. Dann machen Sie weiter. Wenn Sie jetzt anfangen, können Sie alle fünf Konzepte noch vor Jahresende beherrschen.

Bis zum 31. Dezember werden Sie SQL nicht nur besser verstehen, sondern auch so anwenden können wie ein Profi.

Starken Abschluss

Sie brauchen keinen Neujahrsvorsatz, um Ihre Fähigkeiten zu verbessern. Diese fünf Lektionen sind kleine, aber wirkungsvolle Erfolge, die die meisten Lernenden überspringen – und genau deshalb verschafft Ihnen das Beherrschen dieser Lektionen jetzt einen Vorteil.

Wenn Sie Zugang zu allen hier genannten Kursen haben möchten, schauen Sie sich unserAlle für immerSQL-Paket an. Es umfasst alle aktuellen und zukünftigenLearnSQL.deKurse in einem einzigen Kauf – ohne Abonnement, ohne Ablaufdatum. Es ist das beste Langzeitangebot für alle, die SQL ernsthaft beherrschen möchten.

Wählen Sie eine Lektion aus, beginnen Sie LearnSQL.denoch heute und beenden Sie das Jahr mit dem Wissen, dass Sie endlich die Lücken geschlossen haben, die Sie bisher zurückgehalten haben. Ihre zukünftigen Abfragen (und Ihr zukünftiges Ich) werden es Ihnen danken.