Big Query-如何在 Big Query 中按浏览量、用户每周比较数据
Posted
技术标签:
【中文标题】Big Query-如何在 Big Query 中按浏览量、用户每周比较数据【英文标题】:Big Query-how to compare the data weekly by pageviews,users in Big query 【发布时间】:2021-01-08 11:21:18 【问题描述】:我正在尝试每周比较 Big Query 中的浏览量、用户数和会话数 所以我想将 2019 年(2 月 1 日至 2 月 14 日)的数据与 2020 年(2 月 1 日至 2 月 14 日)的数据进行比较,并大致预测 2021 年(2 月 1 日至 2 月 14 日)
你能帮我看看如何在一个查询中查看每周数据比较吗?
所以下面我只看到每天的数据,我想看到的是 2019 年 2 月 1 日至 2 月 14 日的每周数据,并以相同的方式查看 2020 年和 2021 年数据的每周数据
【问题讨论】:
请提供一些示例数据和预期输出。 @Popeye 在上面添加了一张图片 "compare" 不是 SQL 操作。请说明你要实现的逻辑和你想要的结果。 @GordonLinoff 我的意思是我想查看 2019 年、2020 年的每周统计数据以及同一时间段的 2021 年预测数据。 @DivyangJain 。 . .请解释“预测”值的来源。没有 SQL 关键字“predict”。 【参考方案1】:在标准 SQL 中尝试以下操作:
with data as (
select 1 as row, 'Life' as sitesection, '20190201' as `date`, 21940 as Pageviews, 19429 Users
union all
select 2 as row, 'Life' as sitesection, '20190202' as `date`, 29283 as Pageviews, 25910 Users
union all
select 1 as row, 'Life' as sitesection, '20200201' as `date`, 5 as Pageviews, 2 Users
union all
select 2 as row, 'Life' as sitesection, '20200202' as `date`, 6 as Pageviews, 3 Users
)
select extract(YEAR from PARSE_DATE("%Y%m%d", date)) as Year,
extract(WEEK from PARSE_DATE("%Y%m%d", date)) as week,
sum(Pageviews) as totl_pageviews,
sum(Users) as total_users from data
group by extract(YEAR from PARSE_DATE("%Y%m%d", date)), extract(WEEK from PARSE_DATE("%Y%m%d", date))
它显示了按年和周分组的页面浏览量和用户总数。我尝试在WITH
子句中模拟您图片中的数据。
【讨论】:
【参考方案2】:Kyrylo 的上述回答很好,但对于大多数用途,您可能希望显示一周的第一天,也许是这样:
with data as (
select 1 as row, 'Life' as sitesection, date('2019-02-01') as `date`, 21940 as Pageviews, 19429 Users
union all
select 2 as row, 'Life' as sitesection, date('2019-02-02') as `date`, 29283 as Pageviews, 25910 Users
union all
select 1 as row, 'Life' as sitesection, date('2020-02-01') as `date`, 5 as Pageviews, 2 Users
union all
select 2 as row, 'Life' as sitesection, date('2020-02-02') as `date`, 6 as Pageviews, 3 Users
)
select DATE_TRUNC(`date`, week) as first_day_of_week,
sum(Pageviews) as totl_pageviews,
sum(Users) as total_users from data
group by first_day_of_week
【讨论】:
以上是关于Big Query-如何在 Big Query 中按浏览量、用户每周比较数据的主要内容,如果未能解决你的问题,请参考以下文章