如何在Biquery中创建具有参数值"action"和"label"的报告,在两个不同的列中



使用下面的查询通过大查询查询带有字符串值的param.key"action"并获取报告

选择event_name,param.value.string_value作为action,count(*(作为eventcoun从CCD_ 1,UNNEST(event_params(作为参数其中event_name="BotNav",param.key="action"按1,2分组,按事件计数desc 排序

通过bigquery接收的输出

event_name操作eventount

BotNav主页3575

BotNav应用程序1468

使用下面的查询通过大查询查询到带有字符串值的param.key"标签",并获取报告

选择event_name,param.value.string_value作为action,count(*(作为eventcoun从CCD_ 2,UNNEST(event_params(作为参数其中event_name="BotNav",param.key="label"按1,2分组,按事件计数desc 排序

通过bigquery接收的输出event_name标签eventount

BotNav点击2341

BotNav提交1234

BotNav单击1234BotNav提交234

如何使用event.param.key"action"&"标签"在两个不同的列中。我需要像这样退出Bigquery。请。在bigquery中找到低于预期的输出

预期输出

event_name操作标签eventount

BotNav主页点击2341

BotNav主页提交1234

BotNav应用程序点击1234

BotNav应用程序提交234

请帮助获取操作&在两个不同的列中标记字符串值

尝试低于

#standardSQL
select 
event_name, 
param1.value.string_value as action,
param2.value.string_value as label,
count(1) as eventcount
From `<table>`,
UNNEST(event_params) as param1,
UNNEST(event_params) as param2
where event_name = 'BotNav' 
and param1.key='action' 
and param2.key='label' 
group by 1, 2, 3 
order by eventcount desc   

显然假设每个event_name行的event_params中只有一个"action"one_answers"label"键-根据问题示例中的计数,这应该是真的

另一种选择是

#standardSQL
select 
event_name, 
(select value.string_value from UNNEST(event_params) where key='action') as action,
(select value.string_value from UNNEST(event_params) where key='label') as label,
count(1) as eventcount
From `<table>`
where event_name = 'BotNav' 
group by 1, 2, 3 
order by eventcount desc 

假设相同

最新更新