仪表盘报告 - 主要推荐来源

这是“热门推荐者”仪表板报告的 SQL 版本

本报告将显示在指定日期范围内为帖子生成最多入站链接点击次数的顶级用户。

该报告不仅显示每个用户收到的总点击次数,还显示这些点击次数分布的不同主题的数量。这有助于了解哪些用户正在从外部来源为论坛带来流量,并在多个讨论中吸引受众。

--[params]
-- date :start_date
-- date :end_date

SELECT 
    il.user_id, 
    COUNT(*) Clicks,
    COUNT(DISTINCT p.topic_id) Topics
FROM incoming_links il
INNER JOIN posts p ON p.id = il.post_id
WHERE il.created_at::date BETWEEN :start_date AND :end_date
    AND il.user_id > 0
    GROUP BY il.user_id
ORDER BY 2 DESC

SQL 查询说明

此报告使用的 SQL 查询执行以下操作:

  • 筛选入站链接记录(incoming_links),仅包括在指定日期范围(:start_date:end_date)内创建的记录。
  • 确保入站链接与有效用户相关联(排除 user_id < 0 的系统或匿名用户)。
  • incoming_links 表与 posts 表连接,将每次链接点击与相应的主题关联起来。
  • user_id 对结果进行分组,以汇总每个用户的数据。
  • 计算每个用户的入站链接总点击次数(Clicks)和不同主题的数量(Topics)。
  • 按总点击次数降序对结果进行排序,以识别顶级贡献者。

参数

  • :start_date:生成报告的日期范围的开始日期。
  • :end_date:生成报告的日期范围的结束日期。

两个日期参数均接受 YYYY-MM-DD 格式。

示例结果

用户 点击次数 主题
username_1 5241 97
username_2 1256 14
username_3 1242 12
4 个赞