在 BigQuery 中滚动 7 天
Posted
技术标签:
【中文标题】在 BigQuery 中滚动 7 天【英文标题】:Rolling 7 days in BigQuery 【发布时间】:2017-07-05 13:56:03 【问题描述】:我最近从 Legacy SQL 迁移了我的代码,需要替换 TABLE_DATE_RANGE,如何使用标准 SQL 来实现?我的数据是以 YYYYMMDD 格式导入 BigQuery 的 GA 表。
我已通读迁移文档,但不明白如何使用 _TABLE_SUFFIX 应用动态日期范围(例如过去 7 天)。我了解如何使用它来提取特定月份的日期,但不能用于滚动范围。这可能吗?
【问题讨论】:
WHERE
子句是一回事。
正如所写,很难对您的问题给出有意义的答案。查看the documentation 和其他关于_TABLE_SUFFIX
的SO google-bigquery
帖子,然后看看您是否有任何问题。
谢谢,我已经阅读了他的文档,但我看不出如何使用 _TABLE_SUFFIX 应用动态日期范围(例如过去 7 天)。我了解如何使用它来提取特定月份的日期,但不能用于滚动范围。我会相应地更新我的问题。
【参考方案1】:
我在这篇文章中找到了我的问题的答案: BigQuery StandardSQL: Last 7 Days using _TABLE_SUFFIX
我添加了:
WHERE
PARSE_DATE('%y%m%d', _TABLE_SUFFIX) BETWEEN
DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY) AND
DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY)
并将我的通配符更新为 .ga_sessions_20*
而不是 .ga_sessions_*
感谢大家的帮助。
【讨论】:
以上是关于在 BigQuery 中滚动 7 天的主要内容,如果未能解决你的问题,请参考以下文章
如何计算Firebase中的MAU?我需要BigQuery吗?