问题:我想使用_TABLE_SUFFIX从多个Google Analytics会话表中提取数据,但我想将后缀参数设置为"七天前"和"一天前"之间(即提取最近7天的数据)
当前语法(不起作用):
#StandardSQL
SELECT
date,
SUM (totals.visits) AS visits
FROM
`projectname.123456789.ga_sessions_*`
WHERE
_TABLE_SUFFIX BETWEEN
'DATE_ADD(CURRENT_TIMESTAMP(), INTERVAL -7 DAY)' AND
'DATE_ADD(CURRENT_TIMESTAMP(), INTERVAL -1 DAY)'
GROUP BY
date
ORDER BY
date ASC
Run Code Online (Sandbox Code Playgroud)
这给了我一条消息" 有效:此查询将在运行时处理0 B." 在我看来,语法没有错误,但BigQuery无法读取我的日期函数,因此无法将它们后缀为ga_sessions_*通配符
灵感:
BigQuery Cookbook有一个我基于此的遗留SQL示例:(https://support.google.com/analytics/answer/4419694?hl=zh-CN#7days)
#LegacySQL
SELECT
date,
SUM (totals.visits) AS visits
FROM
(TABLE_DATE_RANGE([73156703.ga_sessions_],
DATE_ADD(CURRENT_TIMESTAMP(), -7, 'DAY'),
DATE_ADD(CURRENT_TIMESTAMP(), -1, 'DAY')))
GROUP BY
date
ORDER BY
date ASC
Run Code Online (Sandbox Code Playgroud)
我尝试过的事情:(这不起作用)
使用DATE_SUB而不是DATE_ADD并使用CURRENT_DATE而不是CURRENT_TIMESTAMP:
WHERE
_TABLE_SUFFIX BETWEEN
'DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)' AND
'DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY)'
Run Code Online (Sandbox Code Playgroud)
导致" …