decode (fontos) függvény

A következőkre vonatkozik:jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime

A kulcsnak megfelelő értéket adja vissza. decode expr összehasonlítja az egyeseket keyN sorrendben, és visszaadja az első egyezés megfelelő valueN értékét (például kulcs-érték keresés vagy kapcsoló). Ha nincsenek kulcs egyezések defValue , akkor a megadott esetben ad vissza, ellenkező esetben NULL.

Szintraxis

decode(expr, { key1, value1 } [, ...] [, defValue])

Argumentumok

Visszaküldések

Az eredmény a legkevésbé gyakori típus a valueN és defValue közül.

A függvény az első valueN-t adja vissza, amelynél keyN egyezik expr-vel. Ebben a függvényben NULL egyezik NULL. Ha nincs keyN egyezés expr-gyel, akkor defValue visszatér, ha létezik. Ha nincs defValue megadva, az eredmény .NULL

Példák

-- 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