Skip to main content
Workday User Guide
Laatst bijgewerkt: 2023-06-23
CASE

CASE

Omschrijving

CASE
is een rijfunctie die elke rij in de gegevensset evalueert op basis van een of meer invoervoorwaarden en het opgegeven resultaat uitvoert wanneer aan de invoervoorwaarden wordt voldaan.

Syntaxis

CASE
WHEN
input_condition
[
AND
|
OR
input_condition
]
THEN
output_expression
[...] [
ELSE
other_output_expression
]
END

Retourwaarde

Retourneert één waarde per rij van hetzelfde type als de uitvoerexpressie. Alle uitvoerexpressies moeten hetzelfde veldtype retourneren.
Als er meerdere uitvoerexpressies zijn die verschillende veldtypen retourneren, moet u uw hele veld insluiten
CASE
expressie in een van de veldtypeconversiefuncties, zoals
TO_INT
, om alle uitvoerwaarden expliciet naar een bepaald veldtype te casten.

Invoerparameters

WHEN
invoervoorwaarde
Vereist. De
WHEN
wordt gebruikt om een of meer Boole-expressies op te geven (zie de ondersteunde voorwaardelijke operatoren). Als een invoerwaarde aan de voorwaarde voldoet, wordt de uitvoerexpressie toegepast. Invoervoorwaarden kunnen andere rijfuncties in hun expressie bevatten, maar geen samenvattingsfuncties of eenheidsuitdrukkingen. U kunt de gebruiken
AND
of
OR
trefwoorden om meerdere invoervoorwaarden te combineren.
THEN
output_expression
Vereist. De
THEN
wordt gebruikt om een uitvoerexpressie op te geven wanneer aan de opgegeven voorwaarden wordt voldaan. Uitvoerexpressies kunnen andere rijfuncties in hun expressie bevatten, maar kunnen geen samenvattingsfuncties of eenheidsuitdrukkingen bevatten.
ELSE
other_output_expression
Optioneel. De
ELSE
kan worden gebruikt om een alternatieve uitvoerexpressie op te geven die moet worden gebruikt wanneer niet aan de opgegeven voorwaarden wordt voldaan. Als
ELSE
expressie is niet opgegeven,
ELSE NULL
is de standaardwaarde.
EINDE
Vereist. Geeft het einde van aan
CASE
functieverwerking.

Voorbeelden

Waarden in de
leeftijdskolom
converteren naar op bereik gebaseerde groeperingen (binning):
CASE WHEN [age] <= 25 THEN "0-25" WHEN [age] <= 50 THEN "26-50" ELSE "over 50" END
Waarden in de kolom
'Gender'
van de ene tekenreeks naar de andere transformeren:
CASE WHEN [gender] = "M" THEN "Male" WHEN [gender] = "F" THEN "Female" ELSE "Unknown" END
De
voertuigkolom
bevat de volgende waarden: vrachtwagen, bus, auto, scooter, wagen, fiets, driewieler en motor. In het volgende voorbeeld worden meerdere waarden in de
voertuigkolom
geconverteerd naar één waarde:
CASE WHEN [vehicle] in ("bike","scooter","motorcycle") THEN "two-wheelers" ELSE "other" END