最新历史版本 :SparkSQL条件函数 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

本文介绍 SparkSQL 中的条件函数语法。

2. IF-条件判断编辑

推荐使用FineDataLink 新增计算列中的 IF-条件判断 函数。

操作示例详情参见:新增列_条件赋值

3. NVL编辑

格式:NVL(T value, T default_value)

如果 value 值为 NULL 就返回 default_value,否则返回 value。 

示例:

原表中「货主名称」包含 NULL,如下图所示:

使用 SparkSQL ,如果「货主名称」为 NULL ,则返回 未知,否则返回已有值,如下图所示:

select `订单ID` ,nvl(`货主名称` ,"未知") from DB表输入

结果如下:

4. COALESCE 条件 编辑

COALESCE(T v1, T v2, ...):返回第一非 NULL 的值,如果全部都为 NULL 就返回 NUL。 

示例:

原表中「货主地址」和「货主地区」均包含 NULL,如下图所示:

使用 SparkSQL ,返回第一个非 NULL 值,如下图所示:

select `货主地址`,`货主地区`,coalesce(`货主地址` ,`货主地区` ) from DB表输入

结果如下图所示:

5. CASE 分组赋值编辑

推荐使用FineDataLink 新增计算列中的 SWITCH 函数。

示例详情参见:新增列_分组赋值

6. 空值处理编辑

在 FineDataLink 中可以用 数据过滤 实现

 isnull( a ):如果 a 为 NULL 就返回 true,否则返回 false。

 数据过滤 中为如下操作:

 is not null ( a ):如果 a 为非 NULL 就返回 true,否则返回 false。 

 数据过滤 中为如下操作: