Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:
Databricks SQL
Databricks Runtime
Retourneert de waarde die overeenkomt met de sleutel.
decodevergelijkt met elke keyN op volgorde en retourneert expr de corresponderende valueN voor de eerste overeenkomst (zoals een zoekactie voor sleutelwaarden of switch). Als er geen sleutel overeenkomt, wordt deze geretourneerd defValue wanneer deze is opgegeven, anders NULL.
Syntaxis
decode(expr, { key1, value1 } [, ...] [, defValue])
Argumenten
-
expr: Elke expressie van een vergelijkbaar type. -
keyN: Een expressie die overeenkomt met het typeexpr. -
valueN: Een uitdrukking die een kleinst gemene type metdefValueen de anderevalueNs deelt. -
defValue: Een optionele expressie die een minst gangbaar type deelt metvalueN.
Retouren
Het resultaat is van het minst gangbare type van de valueN en defValue.
De functie retourneert de eerste valueN waarvoor keyN overeenkomt expr.
Voor deze functie NULL komt overeen met NULL.
Als keyN nergens overeenkomt met expr, wordt defValue geretourneerd als deze bestaat.
Als er geen defValue is opgegeven, is het resultaat NULL.
Voorbeelden
-- 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