求帮忙,一句SQL查出,一个年级里面所有科目,成绩最高和最低的学生及其分数。
求帮忙,一句SQL查出,一个年级里面所有科目,成绩最高和最低的学生及其分数。
代码成湿 发表于2年前
求帮忙,一句SQL查出,一个年级里面所有科目,成绩最高和最低的学生及其分数。
  • 发表于 2年前
  • 阅读 35
  • 收藏 0
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

摘要: 今天面试,临时加个题,让当面写个“简单”sql. 要求:一句SQL查出,一个年级里面所有科目,成绩最高和最低的学生及其分数。

今天面试,临时加个题,让当面“手写”个“简单”sql.
要求:一句SQL查出,一个年级里面所有科目,成绩最高和最低的学生及其分数。

表结构如下:

t表

student,score,subject

但是没想出来。回家建了个表,配上数据,“在能调试的情况下”,还是用了些时间按要求写出来了。

如下:

SELECT "最高分",t.*
FROM t ,(SELECT MAX(score) AS score,`subject` FROM t GROUP BY `subject`)b
WHERE t.`score` = b.score
AND t.`subject` = b.subject
UNION
SELECT "最低分",t.*
FROM t ,(SELECT MIN(score) AS score,`subject` FROM t GROUP BY `subject`)b
WHERE t.`score` = b.score
AND t.`subject` = b.subject;

重点是我觉得在面试现场,特别是在“没有db调试的情况下”,一般很难写出这样的sql.

是我该怀疑自己的人生了呢,还是这个题出的确实不好,还有点感觉被故意刁难了。

这种临时表的用法确实很少用,有没大神能写出更普通点的sql,求sql帮助。

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 5
博文 4
码字总数 968
×
代码成湿
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: