Quick BI添加计算字段CONCAT合并两个文本类型维度字段结果,如果其中一个为空,最终结果就为空
更新时间:
复制为 MD 格式
问题描述
Quick BI中数据集字段值如下,其中测试1这个字段是通过表达式CONCAT([类型1],[类型2])创建的计算字段,发现只要有一个文本字段值为空,CONCAT函数结果返回就为空,具体数据集结果如下:

问题原因
使用CONCAT函数来合并字符串,并且其中一个字段是空(NULL),结果通常是NULL。这是因为CONCAT函数在遇到任何NULL值时,会返回NULL,而不是忽略空值。这意味着即使其他参数是非空的,整个表达式的返回值也会是NULL。
解决方案
1,使用CASE WHEN [类型1] IS NULL THEN ' ' ELSE [类型1] END、CASE WHEN [类型2] is null THEN ' ' ELSE [类型2] END表达式将字段类型1、类型2的空值替换为空字符串,并生成计算字段“类型A”、“类型B”。
2,再修改计算字段“测试1”的表达式,将第一步中的两个计算字段用CONCAT合并起来,其表达式变为CONCAT([类型A],[类型B]),最终问题解决:

适用于
公有云专业版6.0
该文章对您有帮助吗?