【发布时间】:2021-11-10 22:54:33
【问题描述】:
您好,我正在处理lt-pcf-analytics-exp.90676036.ga_sessions_* 表,我需要从嵌套命中列中提取不同的变量,包括除hits.customDimensions.value 和hits.customDimensions.index 列之外的所有变量。我认为命中和hits.customDimensions 都是ARRAY。如何在标准 SQL 中执行此操作?
我已经发现了一个关于类似问题的问题 (BigQuery except double nested column),但在我的情况下,我有一个双嵌套数组列,我无法调整代码。
基本上,这就是我要提取的内容。如何修改它以便排除hits.customDimensions.value 和hits.customDimensions.index?谢谢。
SELECT fullVisitorId,
visitId,
visitNumber,
cd.value as PCF_CUST_ID,
date,
TIMESTAMP_SECONDS(visitStartTime) as visitStartTime,
totals.visits as visits,
totals.hits as total_hits,
hits.* (EXCEPT hits.customDimensions.value and hits.customDimensions.index)
FROM `lt-pcf-analytics-exp.90676036.ga_sessions_*` as t
left join unnest(customDimensions) as cd
left join unnest(hits) as hits
WHERE _TABLE_SUFFIX between '20210101' and '20210131'
and cd.index = 4 and cd.value is not null
ORDER BY PCF_CUST_ID, visitStartTime, hitNumber
【问题讨论】: