题解 | #统计复旦用户8月练题情况#

统计复旦用户8月练题情况

https://www.nowcoder.com/practice/53235096538a456b9220fce120c062b3

# 方法1
SELECT up.device_id,up.university,COUNT(qpd.device_id) AS question_cnt,
SUM(CASE WHEN qpd.result = 'right' THEN 1 ELSE 0 END) AS right_question_cnt  
FROM user_profile up 
LEFT JOIN question_practice_detail qpd ON up.device_id = qpd.device_id 
WHERE up.university = '复旦大学' AND (MONTH(DATE)='08' OR DATE IS NULL)
GROUP BY up.device_id,up.university

# 方法2
SELECT
    up.device_id,
    up.university,
    COUNT(qpd.device_id) AS question_cnt,
    SUM(
        CASE
            WHEN qpd.result = 'right' THEN 1
            ELSE 0
        END
    ) AS right_question_cnt
FROM
    user_profile up
    LEFT JOIN question_practice_detail qpd ON up.device_id = qpd.device_id
    AND MONTH (qpd.date) = 8
WHERE
    university = '复旦大学'
GROUP BY
    up.device_id

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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