SQL进阶技巧:如何统计用户跨端消费行为?
目录
0 问题描述
2 问题剖析
技术难点解析
3 完整解决方案
步骤1:构造全量日期平台组合
步骤2:用户行为标记
步骤3:最终关联聚合
4 核心技巧总结
5 复杂度评估
往期精彩
0 问题描述
支出表: Spending
+-------------+---------+
| Column Name | Type |
+-------------+---------+
| user_id | int |
| spend_date | date |
| platform | enum |
| amount | int |
+-------------+---------+
这张表记录了用户在一个在线购物网站的支出历史,该在线购物平台同时拥有桌面端('desktop')和手机端('mobile')的应用程序。
这张表的主键是 (user_id, spend_date, platform)。
平台列 platform 是一种 ENUM ,类型为('desktop', 'mo每天 仅 使用手机端用户、仅 使用桌面端用户和 同时 使用桌面端和手机端的用户人数