Sdílet prostřednictvím


Funkce el. výkaznictví CASE

Funkce CASE vyhodnotí hodnotu zadaného výrazu podle zadaných alternativních možností a vrátí výsledek první možnosti, která se rovná hodnotě zadaného výrazu. V opačném případě vrátí volitelný výchozí výsledek, pokud je výchozí výsledek zadán jako poslední argument volané funkce, jemuž nepředchází nějaká možnost. Vrácená hodnota může být libovolného podporovaného datového typu.

Syntaxe

CASE (expression, option 1, result 1[, option 2, result 2, …, option N, result N, default result])

Argumenty

expression: primitivní datový typ (logická, číselná nebo textová hodnota)

Platný výraz, který vrací hodnotu primitivního datového typu.

option 1: primitivní datový typ (logická, číselná nebo textová hodnota)

Platný výraz, který vrací hodnotu stejného primitivního datového typu jako argument expression volané funkce. Tento argument je povinný.

result 1: kterýkoli z podporovaných datových typů

Vrácený výsledek, který odpovídá předcházející možnosti. Tento argument je povinný.

option N: primitivní datový typ (logická, číselná nebo textová hodnota)

Platný výraz, který vrací hodnotu stejného primitivního datového typu jako argument expression volané funkce. Tento argument je volitelný.

result N: kterýkoli z podporovaných datových typů

Vrácený výsledek, který odpovídá předcházející možnosti. Tento argument je volitelný.

default result: kterýkoli z podporovaných datových typů

Výsledek, který by měl být vrácen, pokud neexistuje shoda. Tento argument je volitelný.

Vrácené hodnoty

Kterýkoli z podporovaných datových typů

Výsledná hodnota některého z podporovaných datových typů.

Poznámky k použití

Výjimka je vyvolána za běhu, pokud neexistuje shoda a volitelný výchozí výsledek není definován.

Všechny výsledky musí být zadány pomocí stejného datového typu. Výjimka je vyvolána v době návrhu, pokud se datové typy konfigurovaných výsledků neshodují.

Jsou-li první výsledná hodnota a n-tá hodnota výsledku hodnoty datového typu kontejner (záznam) nebo seznam záznamů, výsledek obsahuje pouze pole, která existují v obou hodnotách.

Příklad

CASE( DATETIMEFORMAT( NOW(), "MM"), "10", "WINTER", "11", "WINTER", "12", "WINTER", "") vrátí řetězec "WINTER" (zima), pokud je aktuální datum relace aplikace mezi říjnem a prosincem. Jinak bude vrácen prázdný řetězec.

Další zdroje

Logické funkce