Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:
Databricks SQL
Databricks Runtime
Возвращает значение, соответствующее ключу.
decode сравнивается expr с каждым keyN порядком и возвращает соответствующее valueN для первого совпадения (например, поиск по ключу или переключение). Если ключ не совпадает, он возвращается defValue при указании, в противном случае NULL.
Синтаксис
decode(expr, { key1, value1 } [, ...] [, defValue])
Аргументы
-
expr: любое выражение сравнимого типа. -
keyN: выражение, совпадающее с типомexpr. -
valueN: выражение, которое использует наименее распространенный тип сdefValueи другимиvalueN. -
defValue: необязательное выражение, которое делит наименее общий тип сvalueN.
Возвраты
Результатом является наименее распространенный типvalueN и defValue.
Функция возвращает первое значение valueN, для которого keyN совпадает с expr.
Для этой функции NULL соответствует NULL.
Если ни одно значение keyN не соответствует значению expr, возвращается defValue (если существует).
Если результат не defValue указан NULL.
Примеры
-- 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
Связанные функции
-
caseВыражение - Функция для набора символов