Logo Wand.Tools

SQL CASE Statement Generator

Verwenden Sie KI, um CASE-Anweisungen für bedingte Logik in SQL zu generieren

SQL CASE Tutorial

SQL CASE Tutorial

Die SQL CASE-Anweisung wird verwendet, um bedingte Logik in SQL-Abfragen zu implementieren. Sie ermöglicht es Ihnen, verschiedene Aktionen basierend auf bestimmten Bedingungen auszuführen. Dieses Tutorial führt Sie durch die Syntax und Verwendung der CASE-Anweisung mit praktischen Beispielen.

Syntax

Die grundlegende Syntax der CASE-Anweisung lautet wie folgt:

CASE
    WHEN Bedingung1 THEN Ergebnis1
    WHEN Bedingung2 THEN Ergebnis2
    ...
    ELSE Standardergebnis
END
  • Bedingung1, Bedingung2, …: Dies sind die Bedingungen, die in der Reihenfolge ausgewertet werden.
  • Ergebnis1, Ergebnis2, …: Das Ergebnis, das zurückgegeben wird, wenn die entsprechende Bedingung wahr ist.
  • Standardergebnis: Das Ergebnis, das zurückgegeben wird, wenn keine der Bedingungen wahr ist (optional).

Beispiel 1: Einfaches CASE

Angenommen, Sie haben eine Tabelle employees mit den Spalten id, name und salary. Sie möchten die Mitarbeiter basierend auf ihrem Gehalt kategorisieren:

SELECT 
    name,
    salary,
    CASE
        WHEN salary > 100000 THEN 'Hoch'
        WHEN salary BETWEEN 50000 AND 100000 THEN 'Mittel'
        ELSE 'Niedrig'
    END AS salary_category
FROM employees;

Diese Abfrage gibt den Namen, das Gehalt und eine neue Spalte salary_category zurück, die das Gehalt jedes Mitarbeiters als ‘Hoch’, ‘Mittel’ oder ‘Niedrig’ kategorisiert.

Beispiel 2: CASE in ORDER BY

Sie können die CASE-Anweisung auch in der ORDER BY-Klausel verwenden, um die Ergebnisse basierend auf einer bedingten Logik zu sortieren:

SELECT 
    name,
    salary
FROM employees
ORDER BY 
    CASE
        WHEN salary > 100000 THEN 1
        WHEN salary BETWEEN 50000 AND 100000 THEN 2
        ELSE 3
    END;

Diese Abfrage sortiert zuerst die Mitarbeiter mit hohem Gehalt, gefolgt von mittlerem und niedrigem Gehalt.

Beispiel 3: CASE in UPDATE

Die CASE-Anweisung kann auch in einer UPDATE-Anweisung verwendet werden, um Datensätze bedingt zu aktualisieren:

UPDATE employees
SET salary = 
    CASE
        WHEN salary < 50000 THEN salary * 1.1
        WHEN salary BETWEEN 50000 AND 100000 THEN salary * 1.05
        ELSE salary
    END;

Diese Abfrage erhöht das Gehalt der Mitarbeiter um 10%, wenn ihr Gehalt unter 50.000 liegt, um 5%, wenn ihr Gehalt zwischen 50.000 und 100.000 liegt, und lässt es ansonsten unverändert.

Fazit

Die SQL CASE-Anweisung ist ein leistungsstarkes Werkzeug, um bedingte Logik in Ihren Abfragen zu implementieren. Sie kann in SELECT-, UPDATE-, ORDER BY- und anderen Klauseln verwendet werden, um Ihre SQL-Abfragen flexibler und dynamischer zu gestalten. Üben Sie die Verwendung der CASE-Anweisung mit verschiedenen Szenarien, um ihr Potenzial vollständig zu verstehen.