题解 | 统计每个学校各难度的用户平均刷题数

统计每个学校各难度的用户平均刷题数

https://www.nowcoder.com/practice/5400df085a034f88b2e17941ab338ee8

select
    university,
    difficult_level,
    count(qpd.device_id) / count(distinct qpd.device_id) as avg_answer_cnt
from
    user_profile u,
    question_practice_detail qpd,
    question_detail qd
where
    u.device_id = qpd.device_id
    and qpd.question_id = qd.question_id
group by
    u.university,
    qd.difficult_level;

ROUND(number, decimals)

  • number:这是你想要舍入的数值。它可以是一个列名,也可以是直接给出的数值。
  • decimals:这是你想要保留的小数位数。如果省略这个参数,或者将其设置为0,那么函数将返回最接近的整数。如果你想要舍入到小数点后特定的位数,那么你可以指定一个正整数。如果你想要对整数进行舍入(即舍入到最接近的10、100、1000等),那么你可以指定一个负整数。

上方代码应该修改成:

select
    university,
    difficult_level,
    round(count(qpd.device_id) / count(distinct qpd.device_id),4) as avg_answer_cnt
from
    user_profile u,
    question_practice_detail qpd,
    question_detail qd
where
    u.device_id = qpd.device_id
    and qpd.question_id = qd.question_id
group by
    u.university,
    qd.difficult_level;

SQL练练练 文章被收录于专栏

记录自己sql的每一步提升!

全部评论

相关推荐

03-29 12:10
门头沟学院 C++
挣K存W养DOG:散漫消极者淘汰,一眼坑爹。实习几个月转正的时候说你加班太少,能力还行态度不够积极裁了,马上老实。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务