不知道Stackoverflow是否是提出这个问题的正确平台,因为技术性质可能有限。我正在使用BigQuery数据连接器设置仪表板' ga_sessions_YYYMMDD'连接。此连接在Google Analytics中设置了几个自定义维度,我可以在BigQuery控制台中访问这些维度,因此我知道它们存在且包含数据。其中两个自定义维度是语言(页面显示的语言)和 Country (访问者正在访问的语言环境)。它们的自定义维度索引分别为4和5。
我正在尝试从报告中的这些自定义维度FILTERS中创建值,这些值适用于我的信息中心中的其他小部件。我尝试通过添加基于维度的报告过滤器来实现此目的:' customDimensions.value'并使用' customDimensions.index'在此报告过滤器中应用过滤器等于4.但这种方法不起作用。
任何人都可以帮助我使用Google BigQuery数据源在Google Data Studio中设置自定义维度作为报表过滤器的正确方法吗?
我已经尝试了很多东西并不断提出这个问题,但似乎没有人能够帮助我。总而言之,我只是尝试使用BigQuery中的自定义维度进行报表过滤。
非常感谢帮助!
Joost的
答案 0 :(得分:1)
您的查询应编译到视图中,然后将视图用作数据源。从那里开始,您可以使用视图,因为它是一张桌子。
SELECT
fullvisitorid,
( SELECT MAX(IF(index=1,value, NULL))FROM UNNEST(hits.customDimensions)) AS CustomDimension1,
( SELECT MAX(IF(index=2,value, NULL))FROM UNNEST(hits.customDimensions)) AS CustomDimension2
FROM
`XXXXXXX`, unnest(hits) as hits
答案 1 :(得分:0)
在数据工作室中,您可以使用类似的东西
创建新维度时case when customDimensions.index=1 then customDimensions.value end
。
您只需要确保customDimensions.index
的聚合设置为"无"预先。否则,您将收到尺寸/指标混合错误。
它在BigQuery中基本相同:
SELECT
(SELECT value FROM t.customDimensions WHERE index=1) cd1
FROM `project.dataset.ga_sessions_201712*` AS t
或命中范围:
SELECT
(SELECT value FROM h.customDimensions WHERE index=1) cd1
FROM `project.dataset.ga_sessions_201712*` AS t, t.hits AS h
如果您想了解DataStudio正在编写的查询,您可以在连接(计费)项目的BigQuery查询历史记录中看到它们(如果它是以您的名义创建查询作业)。