Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:
Databricks SQL
Databricks Runtime
Vrátí hodnotu odpovídající klíči.
decode
expr porovná s každým keyN v pořadí a vrátí odpovídající valueN pro první shodu (například vyhledávání nebo přepínač klíč-hodnota). Pokud žádný klíč neodpovídá, vrátí defValue se, pokud je zadaný, jinak NULL.
Syntaxe
decode(expr, { key1, value1 } [, ...] [, defValue])
Argumenty
-
expr: Libovolný výraz srovnatelného typu. -
keyN: Výraz, který odpovídal typuexpr. -
valueN: Výraz, který sdílí nejmenší společný typ sdefValuea s ostatnímivalueN. -
defValue: Volitelný výraz, který sdílí nejmenší společný typ svalueN.
Návraty
Výsledkem je nejnižší společný typ z valueN a defValue.
Funkce vrátí první valueN , pro který keyN odpovídá expr.
Pro tuto funkci NULL odpovídá NULL.
Pokud se žádné keyN neshoduje s expr, pak se vrátí defValue, pokud existuje.
Pokud nebyl zadán žádný defValue, výsledek je NULL.
Příklady
-- Compare expr (5) to keys in order: 6? No. 5? Yes. Return the value for 5, which is 'SQL'.
> SELECT decode(5, 6, 'Spark', 5, 'SQL', 4, 'rocks');
SQL
-- NULL matches NULL in decode. expr is NULL; the second key is NULL, so that pair matches. Return 'SQL'.
> SELECT decode(NULL, 6, 'Spark', NULL, 'SQL', 4, 'rocks');
SQL
-- No key matches 7 (not 6, not 5). No fourth key-value pair, so defValue 'rocks' is returned.
> SELECT decode(7, 6, 'Spark', 5, 'SQL', 'rocks');
rocks