-- 检索"01"课程分数小于60,按分数降序排列的学生信息 -- 按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩 --2019/04/28 ...
题目:按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩 分析:第一步应该是拿到平均分 拿到平均分后 再怎么拿学生 课程 和成绩呢 left join 一下吧 sql: 如下: SELECT student score. , a FROM student score LEFT JOIN SELECT studentid, AVG score AS a FROM student score ...
2019-08-12 16:01 0 2679 推荐指数:
-- 检索"01"课程分数小于60,按分数降序排列的学生信息 -- 按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩 --2019/04/28 ...
题目:查询每门课程的平均成绩,结果按平均成绩降序排列,平均成绩相同时,按课程编号升序排列 刚开始写的sql 比较简单: SELECT courseid, AVG(score) as a FROM student_score GROUP BY courseid ORDER BY a DESC ...
SELECT S# as 学生ID ,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#='004') AS 数据库 ,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#='001 ...
MySQL的写法: MySQL判断为null,写法为is null,而不是 t.数据库 = NULL IFNULL(expr1,expr2) 如果expr1不是NULL,IFN ...
题目:查询平均成绩大于等于 60 分的同学的学生编号和学生姓名和平均成绩 这里提到平均分 ,要用到avg 按照学生分组,再求平均分,这里应该是考察group by 与聚合函数的使用 大于60分应该是按照分组后筛选的结果要用having group by 与聚合函数 having ...
题目:查询所有同学的学生编号、学生姓名、选课总数、所有课程的成绩总和 分析:看到总数 应该是要用count(course) ,成绩总和 应该是sum(score) 这些聚合函数,因为要知道每个人的 因此要以人分组 group by studentid 因为要知道学生 ...
题目:查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩 分析:这个我想了半天,我的局限思维是一直在学生分数表 student_score 表中直接 分组 group by ,再去筛选分数 可以先筛选分数再 分组 并having count sql 于下 ...
题目:查询所有学生的课程及分数情况(存在学生没成绩,没选课的情况) 分析: 这个应该是student表 和 student_score表进行联合查询,因为存在学生没成绩,没选课的情况,所以要用left join SELECT student. ...