题解 | #分别满足两个活动的人#

分别满足两个活动的人

https://www.nowcoder.com/practice/a126cea91d7045e399b8ecdcadfb326f

select
    *
from
    (
        select
            er.uid,
            'activity1' as activity
        from
            exam_record er
        where
            year (er.submit_time) = 2021
        group by
            er.uid
        having
            min(er.score) >= 85
    ) a
union all
select
    *
from
    (
        select
            er.uid,
            'activity2' as activity
        from
            exam_record er
            inner join examination_info ei on er.exam_id = ei.exam_id
        where
            year (er.submit_time) = 2021
            and ei.difficulty = "hard"
            and (er.score) > 80
            and timestampdiff (minute, er.start_time, er.submit_time) < ei.duration / 2
        group by
            er.uid
    ) b
order by
    uid;

全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务