有如下四张表:学生表Student(stuId,stuName,stuAge,stuSex);课程表Course(courseId,courseName,teacherId);成绩表Scores(stuId,courseId,score);教师表Teacher(teacherId,teacherName);有...

有如下四张表:
学生表Student(stuId,stuName,stuAge,stuSex);
课程表Course(courseId,courseName,teacherId);
成绩表Scores(stuId,courseId,score);
教师表Teacher(teacherId,teacherName);
有如下10个问题:
查询“001”课程比“002”课程成绩高的所有学生的学号
select stuId
from Scores s1,Scores s2
where
s1.stuId=s2.stuId and s1.courseId="001" and s2.courseId="002" and s1.score>s2.score;
此题是一个自连接查询,也就是两个表都是同一张表。查询平均成绩大于60分的同学的学号和平均成绩
select Student.stuId,avg(Scores.score)
from Student,Scroes
where Studen.stuId=Scores.stuId
Group by Student.stuId
having avg(Scores.score)>60;
聚合函数是不能连接在where子句后面的。- 查询所有同学的学号,姓名,选课数,总成绩
select Student.stuId,Student.stuName,count(Course.courseId),sum(Scores.score)
from Student,Course,Scores
where Studend.stuId=Scores.stuId and Scores.courseId=Course.courseId - 查询姓李的老师的个数
select count(Teacher.TeacherId)
from Teacher
where Teacher.TeacherName like "李%";
本文标题为:javaSql面试题(10题)


基础教程推荐
- Java 数据结构算法Collection接口迭代器示例详解 2023-05-18
- Java项目Guava包 HashMultimap使用及注意事项 2022-11-14
- springboot实现分段上传功能的示例代码 2023-03-20
- Spring AOP切面解决数据库读写分离实例详解 2023-08-02
- jsp+servlet+jdbc实现对数据库的增删改查 2023-08-02
- java 工作流引擎设计实现解析流程定义文件 2023-07-15
- java面试应用上线后Cpu使用率飙升如何排查 2023-03-10
- JSP实现客户信息管理系统 2023-07-30
- Java面试突击之Bean作用域详解 2023-05-07
- Java特性之注解和异常 Throwable 2023-01-17