Case
ist ein bedingter SQL-Ausdruck: Er sucht die erste When
-Klausel deren Wert dem der Case
-Klausel gleicht (=
) und liefert den Wert der entsprechenden Then
-Klausel – oder den der Else
-Klausel falls keiner passt oder Null
, falls es keine Else
-Klausel gibt.
SELECT CASE <Ausdruck> WHEN 0 THEN 'Null'
WHEN 1 THEN 'Eins'
ELSE 'weder Null noch Eins'
END
FROM …
Beachte, dass when null
niemals greift. Verwende stattdessen case when <expr> is null
.
Tutorial: Case
— Bedingte Ausdrücke
Andere bedingte SQL-Ausdrücke
Produktspezifische Funktionen: if
, decode
.
Der einfache Case
-Ausdruck ist in ISO/IEC 9075:2016-2 als verpflichtende Funktion F261-01 definiert.
20 Jahre SQL-Evolution kann man nicht an einem Tag nachholen. Abonniere den Newsletter via E-Mail, Twitter oder RSS um sukzessive aufzuholen und modern-sql.com am Radar zu behalten.
Markus verwandelt veraltetes SQL-92-Wissen in solides und zeitgemäßes SQL-Know-how