SQL handleiding

SQL TUIS SQL Inleiding SQL-sintaksis SQL Kies SQL Kies Distinct SQL Waar SQL En, of, nie SQL Bestel deur SQL Voeg in SQL nulwaardes SQL-opdatering SQL verwyder SQL Kies Top SQL Min en Max SQL-telling, gemiddeld, som SQL Soos SQL Wildcards SQL in SQL Tussen SQL aliasse SQL sluit aan SQL Inner Sluit aan SQL Links Sluit aan SQL Reg Sluit aan SQL Volledige Aansluiting SQL Self Sluit aan SQL Unie SQL Groep deur SQL het SQL bestaan SQL Enige, Almal SQL Kies In SQL Voeg in Kies SQL-geval SQL nul-funksies SQL gestoorde prosedures SQL opmerkings SQL-operateurs

SQL- databasis

SQL Skep DB SQL Drop DB SQL Backup DB SQL Skep tabel SQL Drop Tabel SQL Verander Tabel SQL-beperkings SQL nie nul nie SQL Uniek SQL Primêre Sleutel SQL buitelandse sleutel SQL Check SQL verstek SQL-indeks SQL Outo-verhoging SQL datums SQL-aansigte SQL-inspuiting SQL Hosting SQL-datatipes

SQL- verwysings

SQL sleutelwoorde MySQL-funksies SQL Server funksies MS Access-funksies SQL Vinnige Verw

SQL voorbeelde

SQL voorbeelde SQL vasvra SQL-oefeninge SQL-sertifikaat

SQL CASE- verklaring


Die SQL CASE-verklaring

Die CASEstelling gaan deur voorwaardes en gee 'n waarde terug wanneer aan die eerste voorwaarde voldoen word (soos 'n if-then-else-stelling). So, sodra 'n toestand waar is, sal dit ophou lees en die resultaat gee. As geen voorwaardes waar is nie, gee dit die waarde in die ELSEklousule terug.

As daar geen ELSEdeel is nie en geen voorwaardes waar is nie, gee dit NULL terug.

CASE Sintaksis

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

Demo databasis

Hieronder is 'n keuse uit die "OrderDetails"-tabel in die Northwind-voorbeelddatabasis:

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 Voorbeelde

Die volgende SQL gaan deur voorwaardes en gee 'n waarde terug wanneer aan die eerste voorwaarde voldoen word:

Voorbeeld

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 volgende SQL sal die kliënte volgens Stad bestel. As Stad egter NULL is, bestel dan volgens land:

Voorbeeld

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