1

不知道 Stackoverflow 是否是提出这个问题的合适平台,因为技术性质可能会受到限制。我正在使用 BigQuery 数据连接器“ga_sessions_YYYMMDD”连接设置仪表板。此连接在 Google Analytics 中设置了几个自定义维度,我可以在 BigQuery 控制台中访问它们,因此我知道它们存在并包含数据。其中两个自定义维度是语言(页面显示的语言)和国家(访问者正在访问的语言环境)。它们的自定义维度索引分别为 4 和 5。

我正在尝试在我的报告中从这些自定义维度过滤器中生成值,这些值适用于我仪表板中的其他小部件。我尝试通过添加基于维度的报告过滤器来做到这一点:“customDimensions.value”并在此报告过滤器中应用过滤器,“customDimensions.index”等于 4。但这种方法不起作用。

任何人都可以帮助我使用 Google BigQuery 数据源在 Google Data Studio 中设置自定义维度作为报告过滤器的正确方法吗?

我已经尝试了很多事情并一直在问这个问题,但似乎没有人能够帮助我。总而言之,我只是尝试使用 BigQuery 中的自定义维度制作报告过滤器。

非常感谢您的帮助!

约斯特

4

2 回答 2

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
于 2017-12-20T09:33:26.003 回答
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 查询历史记录中查看它们(如果它正在以您的名义创建查询作业)。

于 2017-12-30T14:55:30.840 回答