有什么想法为什么会发生这种情况吗?
CASE
WHEN REGEXP_MATCH(Event Label,'Registrate ahora')
THEN 'Registrate ahora'
ELSE REGEXP_REPLACE(Event Label,'.*:','')
END
错误:
Invalid formula - Invalid input expression. - Failed to parse CASE statement.
最佳答案
解析错误很可能是由于 CASE WHEN 不接受您的 REGEXP_REPLACE 函数为有效
ELSE ...
“结果”。
从 help 可能不太清楚,但“结果”(THEN/ELSE 返回的值)只能是维度、指标或文字值。
考虑到您需要更动态的内容,解决方法是使用额外的计算字段 - 例如命名为“Event_Exp”。对于该字段,您可以使用
REGEXP_REPLACE(Event Label,'.*:','')
作为计算公式。
您之前的 CASE WHEN 表达式将变为
CASE
WHEN REGEXP_MATCH(Event Label,'Registrate ahora')
THEN 'Registrate ahora'
ELSE Event_Exp
END
虽然对于习惯了 SQL 中 CASE WHEN 强大功能的人来说并不直观,但它应该满足 Google Data Studio 已经在类似场景中为我工作的限制。
如果此建议无法解决您的问题,则它也可能与 Google Data Studio 存在的一个更常见的错误有关,该错误涉及将正则表达式转换为数据库查询的正确运算符。我们必须为与 PostgreSQL 连接器结合使用的所有正则表达式开发解决方法,而 Google 的修复仍然很出色。
issue tracker提供有关等待修复的任何内容的概述以及某些情况下可能的解决方法。
关于looker-studio - 计算字段 Data Studio 公式无效 - 输入表达式无效。 - 无法解析CASE语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59758929/