题目要求:让你输出有两科及其以上挂科(60分及格)的学生的名单?

name    subject    score

错误的做法:

mysql> select name, count(scoure<60) as gk from student group by name having gk >= 2;

为什么会是错的?

正确做法:

mysql> select name, sum(scoure<60) as gk from student group by name having gk >= 2;

为啥用count是错误的呢?因为count()计数是按行计数,他也不管这科挂没。而sum()是求和,当小于60时,就是+1,大于等于60时就是+0。

相关文章:

  • 2021-12-20
  • 2022-02-19
  • 2022-02-27
  • 2021-06-08
  • 2021-07-04
  • 2021-12-22
  • 2021-12-07
  • 2021-07-08
猜你喜欢
  • 2021-10-15
  • 2021-06-11
  • 2022-12-23
  • 2021-07-21
  • 2021-09-09
  • 2022-12-23
相关资源
相似解决方案