Menu
Coddy logo textTech

CASE WHEN

Teil des Abschnitts Über die Grundlagen hinaus der SQL-Journey von Coddy. Lektion 1 von 27.

Ein CASE-Ausdruck ist ein if/else if/else für SQL. Er steht innerhalb von SELECT (oder ORDER BY oder WHERE) und erzeugt einen Wert pro Zeile.

SELECT name,
       CASE
           WHEN score >= 90 THEN 'A'
           WHEN score >= 75 THEN 'B'
           WHEN score >= 60 THEN 'C'
           ELSE 'F'
       END AS grade
FROM students

Jedes WHEN wird von oben nach unten geprüft; die erste Übereinstimmung gewinnt. Das ELSE ist optional. Ohne es erhalten nicht übereinstimmende Zeilen NULL.

Beende immer mit END und gib der Spalte mit AS einen Namen.

challenge icon

Aufgabe

Einfach

Verfügbare Tabellen und Spalten:

  • employees: id, name, department, salary

Gib für jeden Mitarbeiter den name, die department und eine wie folgt erstellte tier-Spalte zurück:

  • 'partner', wenn salary >= 150000 (jede Abteilung)
  • 'senior', wenn department = 'eng' und salary >= 100000
  • 'mid', wenn salary >= 60000
  • 'entry' andernfalls

Sortiere nach salary in absteigender Reihenfolge. Beachte, dass die Reihenfolge der WHEN-Zweige wichtig ist: Der erste Treffer gewinnt.

Probier es selbst

SELECT name, department,
       -- Stufe mit mehreren WHEN-Zweigen, die Gehalt und Abteilung mischen
FROM employees
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Über die Grundlagen hinaus

Übe selbstständig: SQL-Playground