hive中多个字段拼接注意躲避空值坑

select concat(leix01,leix02,leix03) from dim_ivr_dictionary where ivr_table like 'zj%' and bm='40102';

select concat(nvl(leix01,''),nvl(leix02,''),nvl(leix03,'')) from dim_ivr_dictionary where ivr_table like 'zj%' and bm='40102'

如果三个字段都不为空,可以直接使用第一个语句获取拼接字段

若三个字段中包含空值,则使用第一个语句获取的拼接字段为空值,使用第二个语句才可获取正确拼接字段。

切记拼接字段的时候使用nvl预防空值



你可能感兴趣的:(hive中多个字段拼接注意躲避空值坑)