【发布时间】:2018-04-04 00:06:49
【问题描述】:
我正在使用以下 BigQuery 导出数据方案 https://support.google.com/analytics/answer/3437719?hl=en&ref_topic=3416089
并且想要在普通 SQL 上从自定义维度(数组字段)中导出带有额外 2 个字段的命中数据,它会是这样的:
select visitId,visitStartTime,customDimensions.value, hits.SOME_HIT_INFO,
hits.customDimensions.value
from session_data
left join hits
left join customDimensions where customDimensions.index=100
left join hits.customDimensions where hits.customDimensions.index=200
BigQuery 查询语法的外观如何?
更新:
例如我有以下数据:
{
'visitId' : 1
'visitStartTime' : ...,
....
'hits' : [
{
'refferer: 'REF1'
....
'customDimensions' : [
{'index':200,'value':'HITVALUE200'},
{'index':202,'value':'HITVALUE202'},
]
}
],
'customDimensions' : [
{'index':100,'value':'VALUE100'},
{'index':102,'value':'VALUE102'},
]
}
我想收到这样的东西:
+-------------------------------------------------- ------------+ |访问ID | hits.refferer | hits_cd_INDEX_201 | cd_INDEX_101 | +-------------------------------------------------- ------------+ | 1 | REF1 | HITVALUE201 | HITVALUE101 | +-------------------------------------------------- ------------+```
【问题讨论】:
-
不清楚你到底需要什么!请提供更多信息。像预期的结果一样?
-
这背后的逻辑是什么?顺便提一句。您的预期输出与您提供的示例不匹配!
-
@MikhailBerlyant:我想根据索引从数组字段中提取 2 个特殊值(基于索引)。一般的 bigquery 语法不允许,所以我写了这个伪 SQL 请求。
-
我明白了 - 只是想仔细检查一下 - hits 字段是一个数组 - 所以对于同一个 visitId 你可能会得到多个引用者和各自的命中值 - 对吗?
-
完全有意义 - 现在输入答案 :o)
标签: google-bigquery