Как получить ключ и значение определенного пользовательского свойства вместе с параметром и значениями события - PullRequest
0 голосов
/ 11 марта 2019

Запрос поддержки для получения конкретного ключа и значения свойства пользователя вместе с параметром события и значениями.

Поле и значение таблицы Bigquery Подробности (имя события, ключ параметра события, значение параметра события, ключ свойства пользователя, строка значения свойства пользователя enter image description here

Ниже приведен запрос для извлечения конкретного события с ключом и значениями параметра. Как получить ключ свойства пользователя «MemRegDate» и «FreeMember» и его соответствующие значения вместе с параметром события ниже. Запрос вашей поддержки. Пожалуйста, помогите

select 
app_info.id,app_info.version,  
event_date,event_name, 
  param1.value.string_value as category,
  param2.value.string_value as action,
  param3.value.string_value as label,
  count(1) as eventcount
 FROM `<tablet>.events_20190310`,
UNNEST(event_params) as param1,
UNNEST(event_params) as param2,
UNNEST(event_params) as param3
where event_name='BI' and 
param1.key='category' 
and param2.key='action' 
and param3.key='label' 
group by 1, 2, 3, 4, 5,6,7

Мне нужно сообщить в формате ниже. Пожалуйста, найдите ниже требуемый скриншот вывода запроса Размерность в строках

  • event_name
  • Event_param.key Категория
  • Метка Event_param.key
  • user_property.key MemRegDate
  • user_property.key FreeMember

значения в столбцах

Pls. найти прикрепленный выходной скриншот для вашей доброй ссылки Снимок экрана вывода

Я запускаю запрос как он. По-прежнему показывает ошибку в запросе. Просьба найти прикрепленный скриншот введите описание изображения здесь

1 Ответ

0 голосов
/ 11 марта 2019

Ниже приведен стандартный пример Sql:

--Data
WITH data AS (
SELECT 'BI' AS event_name, 
[STRUCT('label' AS key ,'click' AS value), ('action','viewProfile_Sent'), ('category','BI')] AS events,
[STRUCT('MemRegDate' AS key ,'val1' AS value), ('FreeMember','val2'), ('','')] AS user
),
label AS (
SELECT event_name, events.value AS label
FROM data, UNNEST(data.events) as events 
where events.key = 'label'
),
action AS (
SELECT event_name, events.value AS action
FROM data, UNNEST(data.events) as events 
where events.key = 'action'
),
category AS (
SELECT event_name, events.value AS category
FROM data, UNNEST(data.events) as events 
where events.key = 'category'
),
MemRegDate AS (
SELECT event_name, user.value AS value
FROM data, UNNEST(data.user) as user
where user.key = 'MemRegDate'
),
FreeMember AS (
SELECT event_name, user.value AS value
FROM data, UNNEST(data.user) as user
where user.key = 'FreeMember'
)


--Query
SELECT data.event_name, category.category, action.action, label.label,  
MemRegDate.value AS MemRegDate_val, FreeMember.value AS FreeMember_val
from data left join label on data.event_name = label.event_name 
left join action on data.event_name = action.event_name 
left join category on data.event_name = category.event_name 
left join MemRegDate on data.event_name = MemRegDate.event_name 
left join FreeMember on data.event_name = FreeMember.event_name 

Этот запрос приводит к следующему выводу, который является ожидаемым результатом, который вы задали в своем вопросе:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...