题解 | #浙大不同难度题目的正确率#

浙大不同难度题目的正确率

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

SELECT
    q1.difficult_level,
    SUM(
        CASE
            WHEN q.result = 'right' THEN 1
            ELSE 0
        END
    ) / COUNT(q.question_id) AS correct_rate
FROM
    user_profile AS u
    JOIN question_practice_detail AS q ON u.device_id = q.device_id
    AND u.university = '浙江大学'
    JOIN question_detail AS q1 ON q.question_id = q1.question_id
GROUP BY
    q1.difficult_level
ORDER BY
    correct_rate ASC;

在SQL查询中,只能有一个GROUP BY子句。

GROUP BY correct_rate是无效的,因为你已经在计算正确率,而正确率是聚合结果,不能直接在GROUP BY中再次引用。

不要忘了还有ORDER BY这个函数

全部评论

相关推荐

比亚迪汽车新技术研究院 硬件工程师 总包21左右 硕士
点赞 评论 收藏
分享
11-18 15:57
门头沟学院 Java
起一个响亮的妹子吧:虽然但是,确有其人,重邮同届的,没有技巧,纯纯的个人实力。查看图片
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务