【发布时间】:2021-08-06 11:41:34
【问题描述】:
我试图创建一个从 iap 事件中提取几个参数的查询,但我似乎无法让它按我想要的方式工作。我尝试了几种不同的方法,但是在查看多天时发现了性能问题。以下是我最近的尝试,虽然我觉得这是错误的方法,但似乎是最快的。任何建议都会有所帮助。
with purchase_id as (
SELECT event_timestamp, param.value.string_value as product_id
FROM `XXX.analytics_X.events_20210803`,
UNNEST(event_params) AS param
WHERE event_name = "in_app_purchase"
AND (param.key = "product_name")
),
purchase_price as (
SELECT event_timestamp, param.value.int_value as product_price
FROM `XXX.analytics_X.events_20210803`,
UNNEST(event_params) AS param
WHERE event_name = "in_app_purchase"
AND (param.key = "price")
)
SELECT event_timestamp, product_id, product_price
FROM purchase_id as pid
JOIN purchase_price as pp
ON pid.event_timestamp = pp.event_timestamp
我正在寻找的结果是每个事件都有一行,其中包含相关参数。
| timestamp | product_id | price |
|---|---|---|
| 1627860223322000 | fun_times | 10 |
| 1627860223432000 | old_times | 3 |
这是一个标准的谷歌分析表,但为了完整起见,请查看屏幕截图。
【问题讨论】:
-
请提供样本数据、期望的结果以及对您想要实现的逻辑的清晰解释。没有数据解释的问题很难理解。
-
抱歉,我只是添加了一个屏幕截图。它只是一个标准的谷歌分析表。
标签: sql google-analytics google-bigquery