1. 概述
本文介紹 SparkSQL 中的條件函式文法。
2. 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表輸入

結果如下圖所示:

