如何在SQL Server中unpivot GA4 (Google Analytics 4) event_params



我们正在通过内置的Microsoft连接器从Big Query导出GA4 (Google Analytics 4)数据。一切都通过了,但是event_params是一种非常不寻常的JSON格式。我已经使用OPENJSON函数和CROSS APPLY从不同的来源分离了许多其他数组,没有问题,但到目前为止,这个数组打败了我。

我已经在互联网上搜索过了,到目前为止,我只找到了关于如何在大查询中做到这一点的文档,这对我来说不适合内置连接器。

我的目标是将每个具有非空值的参数和值pivot到它们自己的列中,如下所示,尽管最后我将拥有大约10个自定义列。

tbody> <<tr>
event_date event_timestamp page_location ga_session number etc
第一个
第二

对于GA4数据,我和你有同样的问题。

经过搜索,我发现您可以选择列,并在转换选项卡上分析JSON。之后可以展开列。

但是当扩展列时,它并没有帮助有标题列与事件…:/

我的解决方案(我不喜欢)是使用大查询连接器的查询选项,并将每个事件作为json带入我的sql数据库…然后使用JSON_QUERY或ADF数据流解析数据。

至少这样它保持所有的名字正确…但是jsons需要更多的手工操作…

SELECT TO_JSON_STRING(t) as value from   
`BigQueryTable.events_*` as t
WHERE
_TABLE_SUFFIX BETWEEN '20221127' AND '20221128'

最新更新