CASE ER-funktion
CASE
-funktionen utvärderar värdet för det angivna uttrycket mot de angivna alternativa och returnerar resultatet av det första alternativet som är lika med värdet för det angivna uttrycket. Annars returneras ett valfritt standard resultat om ett standard resultat anges som det sista argumentet för den anropade funktionen som inte föregås av ett alternativ. Värdet som returneras kan vara ett värde för någon av datatyperna som stöds.
Syntax
CASE (expression, option 1, result 1[, option 2, result 2, …, option N, result N, default result])
Argument
expression
: Primitiv datatyp (booleskt, numeriskt eller text)
Ett giltigt uttryck som returnerar ett värde av den primitiva datatypen.
option 1
: Primitiv datatyp (booleskt, numeriskt eller text)
Ett giltigt uttryck som returnerar ett värde av samma primitiva datatyp som expression
-argumentet för den anropade funktionen. Detta argument krävs.
result 1
: Någon av de datatyper som stöds
Det returnerade resultatet som motsvarar det föregående alternativet. Detta argument krävs.
option N
: Primitiv datatyp (booleskt, numeriskt eller text)
Ett giltigt uttryck som returnerar ett värde av samma primitiva datatyp som expression
-argumentet för den anropade funktionen. Detta argument är valfritt.
result N
: Någon av de datatyper som stöds
Det returnerade resultatet som motsvarar det föregående alternativet. Detta argument är valfritt.
default result
: Någon av de datatyper som stöds
Resultatet som ska returneras om det inte finns någon matchning. Detta argument är valfritt.
Returvärden
Någon av de datatyper som stöds
Resultatvärdet för någon av datatyperna som stöds.
Användningsanteckningar
Ett undantagsfel utlöses vid körning om det inte finns någon matchning och ett valfritt standard resultat inte har definierats.
Alla resultat måste anges med samma datatyp. Ett undantag genereras vid designtillfället om datatyperna för de konfigurerade resultaten inte matchar.
Om det första resultatvärdet och Nth resultatvärdet är värden för datatypen behållare (post) eller postlista har resultatet bara de fält som finns i båda värdena.
Exempel
CASE( DATETIMEFORMAT( NOW(), "MM"), "10", "WINTER", "11", "WINTER", "12", "WINTER", "")
returnerar strängen "WINTER" om det aktuella programsessionsdatumet är mellan oktober och december. Annars returneras en tom sträng.