【数据库 Mysql查询】10-25 查询所有学生的平均成绩 (10 分)

【数据库 Mysql查询】10-25 查询所有学生的平均成绩 (10 分),第1张

本题目要求编写SQL语句,
stu表 和 sc表 中查询所有学生的平均成绩,如果某学生尚未选修课程或成绩为空时,平均分计为0。

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `stu` (
  `sno` char(4) NOT NULL,
  `sname` char(8) NOT NULL,
  `sex` tinyint(1) DEFAULT NULL,
  `mno` char(2) DEFAULT NULL,
  `birdate` datetime DEFAULT NULL,
  `memo` text,
  PRIMARY KEY (`sno`)
);
CREATE TABLE `sc` (
  `sno` char(4) NOT NULL,
  `cno` char(4) NOT NULL,
  `grade` decimal(6,1) DEFAULT NULL,
  PRIMARY KEY (`sno`,`cno`),
  CONSTRAINT `fk_sc_sno` FOREIGN KEY (`sno`) REFERENCES `stu` (`sno`)
);
 

表样例

请在这里给出上述表结构对应的表样例。例如

 

输出样例:

请在这里给出输出样例。例如:

 

 代码如下:

select stu.sno 学号,ifnull(avg(grade),0) 平均成绩
from stu left join sc on stu.sno = sc.sno
group by stu.sno

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/991559.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存