查询前2大和前2小用户并有序拼接

MST 

一、题目 有用户账户表:包含年份,用户id和余额。请按照年份分组,取出余额前两小和前两大对应的用户id。**注意:**需要保持余额最小和最大的用户id排首位。 二、思路 1、计算每年 每个用户余额的升序排名和降序排名。升序排名前两名就是余额前两小的用户,降序排名前两名就是前两大的用户。可以使用row

有序行转列

MST 

一、题目 有学生各学科分数表,记录了学生的各科分数,请按照学生粒度,生成两列数据分别为学科和分数,要求学科内的顺序与分数顺序一致。 数据样例: 二、思路 这是一个行转列的典型问题,目标是将张三的三条记录合并为一条。根据题意最终的数据是这个样子:张三 语文,数学,英语 95,80,82。 要处理这

近30天连续登陆3天以上次数-非开窗

MST 

一、题目 有用户登录记录,已经按照日期去重。求近三十天,用户连续登录超过3天的次数,一直连续登录算一次,有间隔然后重新计算次数, 要求不能用开窗。 数据样例如下: 二、思路 这是一个连续问题:连续问题的解决思路是找到日期和升序序号差值相同的记录,相同则表示日期连续,不同则日期不连续。题目强调不能使用