开始使用免费开始使用

逐月环比比较

为比较各月,您需要使用以下窗口函数之一:

  • LAG(value, offset),输出报表当前行之前第 offset 行的值。
  • LEAD(value, offset),输出报表当前行之后第 offset 行的值。

您的目标是构建一个报表,显示各国家的逐月环比浏览量。几点提示:

  • 您需要按月对日期分箱。可使用 DATE_PART() 函数实现。
  • 您可以用以下公式计算百分比变化(value)/(previous_value) - 1
  • 如果在 LAG()LEAD() 中未提供 offset,其默认值为 1。

由于表在 6 月中旬停止,查询已设置为仅包含截至 5 月底的数据。

本练习是课程的一部分

SQL 报表制作

查看课程

练习说明

  • web_data 中提取 country_id,并使用 DATE_PART() 创建 month
  • 创建 month_views,汇总该月份内的总浏览量。
  • 创建 previous_month_views,提取该国家上个月的总浏览量。
  • 创建字段 perc_change,计算该国家本月相对于上月的百分比变化,负值表示浏览量下降,正值表示增长。

交互式实操练习

通过完成这段示例代码来试试这个练习。

SELECT
	-- Pull month and country_id
	____ AS month,
	____,
    -- Pull in current month views
    ____ AS month_views,
    -- Pull in last month views
    ____ AS previous_month_views,
    -- Calculate the percent change
    ____ AS perc_change
FROM ____
WHERE date <= '2018-05-31'
GROUP BY ____;
编辑并运行代码