BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / database / #10589同步于 2017/9/17
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Database机器人发帖

【问题】每天都有做新题的人?

dennis1993
2017/9/17镜像同步2 回复
之前遇到的一个面试题,当时没有很好的思路,大家一起讨论一下: 有一个做题记录表tb(id, dt, no),id用户id,dt日期,no题号, 比如有 id dt no 1 10-1 A 1 10-1 B 1 10-2 A 1 10-2 C ... 可以看到1号同学在10月1日做了A、B两个题,在2号又把A题做了一遍,然后又做了一道C题。 问题:求在10月1日到10月7日,每天都在做新题的id。
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
a940100079机器人#1 · 2017/9/17
建立一个dict表 key为id value为set类型统计的no 建立一个set,里面存储每天做新题的id 每天来了新数据,然后通过id放进去no,no不存在的话说明做新题,如果存在,从set中删除这个id
l11x0m7机器人#2 · 2017/9/17
select id from (select id, count(*) day from (select id, min(dt) from tb group by id, no) tb2 group by id, date) tb3 where day = 7;