Как получить несколько event_params в качестве столбца в BigQuery - PullRequest
0 голосов
/ 10 апреля 2019

Что мне нужно : общее количество событий и данные, связанные с этим событием.

Что я пробовал: на устройствах, которые я отправил некоторые события в Firebase Analytics. События выглядят так:

event_name = "business_global_view_profile"

с параметрами:

business_global_name :String
business_global_city:String
business_global_ID:String

Так что в BigQuery я получил что-то вроде (между гораздо большим количеством значений и событий, которые не нужны для этого):

enter image description here

Мне нужно получить ТОЛЬКО отправленные мной параметры, поэтому мне нужно отказаться от всех таких вещей, как ga_session_id, firebase_event_origin и т. Д. *

Итак, сначала я попытался «отфильтровать» нужное мне событие от всех остальных событий:

SELECT params.key AS ParamKey, params.value.string_value as Value
FROM `xxxxxx.xxxxx.xxxxx`,
UNNEST(event_params) as params
WHERE event_name = "business_global_view_profile"

После этого я получаю таблицу вроде:

enter image description here

В этот момент мне удалось получить счетчик событий по ID

SELECT Value AS BusinessID, COUNT(Value) Occurrences
  FROM(SELECT params.key AS ParamKey, params.value.string_value as Value
  FROM `xxxxxx.xxxxx.xxxxx`,
  UNNEST(event_params) as params
  WHERE event_name = "business_global_view_profile"
  AND event_date = "20190409")
WHERE ParamKey = "business_global_ID"
Group by Value

enter image description here

Но вот где я потерялся, потому что мне нужно что-то вроде:

|BusinessID | Occurrences | BusinessName | BusinessCity |

Где

  • BusinessName = business_global_name
  • BusinessCity = business_global_city

Как я могу собрать всю эту информацию вместе? Конечно, есть более короткий способ сделать это, но я не слишком много работал с SQL

...