BigQuery 谷歌分析自动化问题
Posted
技术标签:
【中文标题】BigQuery 谷歌分析自动化问题【英文标题】:BigQuery Google Analytics Automation Question 【发布时间】:2020-04-04 00:53:02 【问题描述】:您好:有人可以帮我解决这个问题吗?
我们所有的广告系列都以日期开始
“20200312_NEWS_.....”
我希望能够获得为期 7 天(即 2020 年 3 月 12 日至 2020 年 3 月 19 日)的“新用户”信息
如何使这个过程自动化?我有 100 个这样的活动。我知道我的开始日期,因为它在广告系列名称中。我知道我的结束日期,因为它只是 +7。
我想将其简化为:Start_Date = Left(trafficSource.campaign,8) End_Date=Left(trafficSource.campaign,8) +7。但是我如何告诉它从 Start_Date 到 End_Date 给我新用户的信息。 [在此处输入图片说明][1]
这是我非常基本的代码:
选择 trafficSource.campaign AS 活动,
-- 新用户(公制) 计数(不同( 案子 当 totals.newVisits = 1 THEN fullVisitorId 别的 空值 结尾 )) 作为新用户
来自
Table_1.ga_sessions_*
WHERE totals.visits = 1 和 _table_suffix BETWEEN '20200101' 和“20201231”
分组依据 trafficSource.campaign
【问题讨论】:
【参考方案1】:如果您的问题正确,您希望从广告系列名称中提取日期,然后尝试向其中添加 7 并获取所有新用户
你可以试试这个
select PARSE_DATE('%Y%m%d',(SUBSTR('20200312_NEWS_SampleData',0,8))), DATE_ADD (PARSE_DATE('%Y%m%d',(SUBSTR('20200312_NEWS_SampleData',0,8))), INTERVAL 7 DAY)
【讨论】:
【参考方案2】:所以我得到了我的开始日期和结束日期。我能够解析日期。但是例如如果活动开始日期是“2020-01-03”并且结束日期是“2020-01-10”但是“新用户”数据是从“2020-01-03”到“2020- 04-05”。 “新用户”没有给我从日期范围“2020-01-03”到“2020-01-10”
的数据我的代码:
选择 trafficSource.campaign AS 活动,
Case When (SUBSTR(trafficSource.campaign,10,4)) = 'news' then PARSE_DATE('%Y%m%d',(SUBSTR(trafficSource.campaign,0,8))) end as Start_Date, Case When (SUBSTR(trafficSource.campaign,10,4)) = 'news' then DATE_ADD (PARSE_DATE('%Y%m%d',(SUBSTR(trafficSource.campaign,0,8))), INTERVAL 7 DAY)以 End_Date 结束,
-- 新用户(公制) 计数(不同( 案子 当 totals.newVisits = 1 THEN fullVisitorId 别的 空值 结尾 )) 作为新用户
来自
ga_sessions_*
WHERE totals.visits = 1 和 _table_suffix BETWEEN '20190101' 和“20201231”
分组依据 trafficSource.campaign
订购方式 2 描述
enter image description here
【讨论】:
另一件烦人的事情是,当我将日期范围更改为:_table_suffix BETWEEN '20180101' AND '20201231' 它告诉我“无法解析输入字符串“2020xxxx””我该如何超越这个。如果无法解析则跳过【参考方案3】:我想我终于想通了。但我写了银河系中最糟糕的代码。有人可以帮我提高效率吗:
选择 Table_XYZ.Campaign、Table_XYZ.Start_Date、Table_XYZ.End_Date、SUM(col_1) 从 (
选择 湾。广告系列,开始日期,结束日期,
(当 a.date>= b.Start_Date AND a.date
来自 TABLE_1.VW_GA_TABLE1a
Left outer join TABLE_2.GA_TABLE2
b
开 a.Camp = b.Campaign
分组依据 b. 活动, a.date, b.Start_Date,b.End_Date
Order By b.Campaign Desc) Table_XYZ
按 Table_XYZ.Campaign、Table_XYZ.Start_Date、Table_XYZ.End_Date 分组
【讨论】:
以上是关于BigQuery 谷歌分析自动化问题的主要内容,如果未能解决你的问题,请参考以下文章