Presto DB 中是否有 NVL 的类似物?
我需要检查一个字段是否为 NULL 并返回一个默认值。
我以某种方式解决了这个问题:
SELECT
CASE
WHEN my_field is null THEN 0
ELSE my_field
END
FROM my_table
但我很好奇是否有什么东西可以简化这段代码。
Presto DB 中是否有 NVL 的类似物?
我需要检查一个字段是否为 NULL 并返回一个默认值。
我以某种方式解决了这个问题:
SELECT
CASE
WHEN my_field is null THEN 0
ELSE my_field
END
FROM my_table
但我很好奇是否有什么东西可以简化这段代码。
ISO SQL 函数是COALESCE
coalesce(my_field,0)
https://prestodb.io/docs/current/functions/conditional.html
PSCOALESCE
可以与多个参数一起使用。它将返回第一个(从左侧开始)非 NULL 参数,如果未找到,则返回 NULL。
例如
coalesce (my_field_1,my_field_2,my_field_3,my_field_4,my_field_5)