阅读量:164
Hive中的COALESCE函数用于将多个值合并为一个值
以下是COALESCE函数的基本语法:
COALESCE(arg1, arg2, ..., argN)
其中,arg1, arg2, ..., argN 是要合并的参数,可以是任何数据类型,包括字符串、数字和日期等。COALESCE函数会返回第一个非空参数,如果没有非空参数,则返回NULL。
以下是一些使用COALESCE函数的示例:
将多个列值合并为一个字符串
SELECT COALESCE(column1, column2, column3) AS combined_column
FROM table_name;
上述查询将返回一个名为combined_column的列,其中包含column1、column2和column3中的第一个非空值。
将多个数字相加
SELECT COALESCE(column1, 0) + COALESCE(column2, 0) + COALESCE(column3, 0) AS sum_column
FROM table_name;
上述查询将返回一个名为sum_column的列,其中包含column1、column2和column3中所有非空值的总和。如果其中一个或多个列为空,则使用0进行计算。
将多个日期转换为第一个非空日期
SELECT COALESCE(date1, date2, date3) AS first_non_null_date
FROM table_name;
上述查询将返回一个名为first_non_null_date的列,其中包含date1、date2和date3中的第一个非空日期。如果所有日期都为空,则返回NULL。