题解|对表UNION后#筛选限定昵称成就值活跃日期的用户#

筛选限定昵称成就值活跃日期的用户

https://www.nowcoder.com/practice/2ed07ff8f67a474d90523b88402e401b

SELECT uid,nick_name,achievement
FROM user_info
WHERE achievement BETWEEN 1200 AND 2500
AND nick_name LIKE '牛客%号'
AND uid IN (
    SELECT uid
    FROM(
        SELECT uid,start_time AS act_time
        FROM exam_record
        UNION ALL
        SELECT uid,submit_time AS act_time
        FROM practice_record
    )temp
    GROUP BY uid
    HAVING DATE_FORMAT(MAX(act_time),'%Y%m') = 202109
)

全部评论
主要是学习在两个不同表中进行max选择的思路:union后使用,而不是先在单独的表中max后,再对两张表比较大小
点赞 回复 分享
发布于 2023-08-17 15:40 上海

相关推荐

我见java多妩媚:大外包
点赞 评论 收藏
分享
11-14 17:28
已编辑
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务