Вложенный оператор case в Data Studio - PullRequest
1 голос
/ 28 апреля 2020

У меня есть названия кампаний: "08-2019 ABCD - Компас", "Электронная книга компаса 09-2019-DEFG", от которой я хотел бы отделить часть строки, но нет шаблона для разделения данных.

Я пытался написать вложенный оператор case, чтобы создать новое измерение, проверив сначала «Compass», а затем «Compass ebook», но он выдает ошибку как Неверная формула.

CASE 
WHEN REGEXP_MATCH(Campaign Name,"^.*(Compass).*") THEN 
   CASE 
    WHEN REGEXP_MATCH(Campaign Name,"^.*(Compass eBook).*") THEN "Compass eBook"
    ELSE "Compass"
   END
ELSE "Undefined" End 

Как мне добиться Сценарий с вложенной инструкцией в Google Data Studio при создании нового измерения.

1 Ответ

0 голосов
/ 28 апреля 2020

Приведенный ниже оператор CASE делает свое дело ( Связывание обоих сообщений ):

CASE
  WHEN REGEXP_MATCH(Campaign Name, ".*(?i)(Compass eBook).*") THEN "Compass eBook"
  WHEN REGEXP_MATCH(Campaign Name, ".*(?i)(Compass).*") THEN "Compass"
  WHEN REGEXP_MATCH(Campaign Name, ".*(?i)(Testing Test).*") THEN "Testing Test"
  WHEN REGEXP_MATCH(Campaign Name, ".*(?i)(API Blockade Pattern).*") THEN "API Blockade Pattern"
  ELSE "Undefined"
END

В операторе Case используется " First In Подход типа First Out", таким образом, установка для первого предложения WHEN значения Compass eBook гарантирует, что когда REGEXP_MATCH увидит фразу Compass eBook, она будет отображаться первой в течение второго REGEXP_MATCH, который ищет Compass

Отчет Google Data Studio для уточнения:

...