题解 | #SQL类别高难度试卷得分的截断平均值#

SQL类别高难度试卷得分的截断平均值

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

SELECT tag, difficulty, ROUND((SUM(score)-MIN(score)-MAX(score))/(COUNT(score)-2), 1)
FROM examination_info a
JOIN exam_record b
# using(exam_id)
ON a.exam_id = b.exam_id
WHERE tag = 'SQL' AND difficulty = 'hard';

抄的第一名的代码,惊呆我了。上一版我还用窗口函数进行排序,是考虑到万一有两个最大值或最小值呢,但是题目中去掉的是一个最大值,就不影响

截断平均值也就是把一个最大值和最小值从总和中删掉,然后除以总数-2即可

看到大佬的using有点不懂,查了下才知道是使用两个表共同的列,等价于下面的on

全部评论

相关推荐

Yki_:你要算时间成本呀,研究生两三年,博士三四年,加起来就五六年了,如果你本科去腾讯干五年,多领五年的年薪,加上公司内涨薪,可能到时候十五年总薪资也跟博士差不多
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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