2015-06-25 61 views
0

有人可以解釋如何在bigquery中查詢customDimensions嗎?在Google中查詢customDimensions Bigquery

我查詢的工作與簡單的where子句即

SELECT COUNT(DISTINCT fullVisitorId) 
    FROM GA_SESSION 
    WHERE hits.customDimensions.index = 4 
    AND hits.customDimensions.value = 'variable1' 
    AND hits.page.pagePath LIKE '%something%'; 

但是現在,當我嘗試做一個聚集體,或者如果我嘗試EXACT_COUNT_DISTINCT沒有GROUP BY,我得到即

SELECT date, COUNT(DISTINCT fullVisitorId) 
FROM GA_SESSION 
WHERE hits.customDimensions.index = 4 
AND hits.customDimensions.value = 'variable1' 
AND hits.page.pagePath LIKE '%something%' 
group by date 
錯誤

錯誤: 查詢失敗 錯誤:無法查詢重複字段customDimensions.index和hits.customDimensions.index的叉積。

回答

1

那些是重複的字段,你需要FLATTEN他們才能查詢。

FLATTEN將重複字段轉換爲可選字段。給定一個具有許多重複字段值的記錄,FLATTEN將其展開爲許多記錄,每個(以前)重複字段的值記錄一個記錄;任何不重複的字段都會被重複以填寫每個形成的新記錄。 FLATTEN刪除一層嵌套。

瞭解更多關於FLATTEN

您需要查詢改寫成:

SELECT .... FROM FLATTEN(FLATTEN(GA_SESSION,customDimensions),hits.customDimensions) 
相關問題