SQL -Tutorial

SQL-HOME SQL-Einführung SQL-Syntax SQL-Auswahl SQL Wählen Sie Eindeutig aus SQL-Wo SQL Und, Oder, Nicht SQL-Reihenfolge nach SQL einfügen in SQL-Nullwerte SQL-Update SQL-Löschen SQL-Auswahl oben SQL-Min und -Max SQL-Anzahl, Durchschnitt, Summe SQL-ähnlich SQL-Platzhalter SQL-Eingang SQL zwischen SQL-Aliase SQL-Joins SQL Inner Join SQL-Left-Join SQL-Rechtsverknüpfung Vollständiger SQL-Join SQL-Self-Join SQL-Union SQL-Gruppierung nach SQL-Haben SQL existiert SQL Beliebig, Alle SQL-Auswahl in SQL-Insert in Select SQL-Fall SQL-Null-Funktionen Gespeicherte SQL-Prozeduren SQL-Kommentare SQL-Operatoren

SQL- Datenbank

SQL DB erstellen SQL-Drop-DB SQL-Sicherungsdatenbank SQL-Tabelle erstellen SQL-Drop-Tabelle SQL Alter-Tabelle SQL-Einschränkungen SQL nicht null SQL-eindeutig SQL-Primärschlüssel SQL-Fremdschlüssel SQL-Check SQL-Standard SQL-Index Automatisches SQL-Inkrement SQL-Daten SQL-Ansichten SQL-Injektion SQL-Hosting SQL-Datentypen

SQL- Referenzen

SQL-Schlüsselwörter MySQL-Funktionen SQL Server-Funktionen MS Access-Funktionen SQL-Schnellref

SQL- Beispiele

SQL-Beispiele SQL-Quiz SQL-Übungen SQL-Zertifikat

SQL CASE- Anweisung


Die SQL CASE-Anweisung

Die CASEAnweisung durchläuft Bedingungen und gibt einen Wert zurück, wenn die erste Bedingung erfüllt ist (wie eine if-then-else-Anweisung). Sobald also eine Bedingung wahr ist, hört sie auf zu lesen und gibt das Ergebnis zurück. Wenn keine Bedingungen erfüllt sind, wird der Wert in der ELSEKlausel zurückgegeben.

Wenn kein ELSETeil vorhanden ist und keine Bedingungen wahr sind, wird NULL zurückgegeben.

CASE-Syntax

CASE
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
    WHEN conditionN THEN resultN
    ELSE result
END;

Demo-Datenbank

Nachfolgend finden Sie eine Auswahl aus der Tabelle „OrderDetails“ in der Northwind-Beispieldatenbank:

OrderDetailID OrderID ProductID Quantity
1 10248 11 12
2 10248 42 10
3 10248 72 5
4 10249 14 9
5 10249 51 40


SQL-CASE-Beispiele

Die folgende SQL durchläuft Bedingungen und gibt einen Wert zurück, wenn die erste Bedingung erfüllt ist:

Beispiel

SELECT OrderID, Quantity,
CASE
    WHEN Quantity > 30 THEN 'The quantity is greater than 30'
    WHEN Quantity = 30 THEN 'The quantity is 30'
    ELSE 'The quantity is under 30'
END AS QuantityText
FROM OrderDetails;

Die folgende SQL ordnet die Kunden nach Stadt. Wenn die Stadt jedoch NULL ist, sortieren Sie nach Land:

Beispiel

SELECT CustomerName, City, Country
FROM Customers
ORDER BY
(CASE
    WHEN City IS NULL THEN Country
    ELSE City
END);