3、从学生表和成绩表中查询出已经选课学生的正确选课结果。要求显示出学生的学号、姓名和成绩。 4、从学生表、成绩表、课程表中查询出已经选课学生的,课程名称,授课教师。 5、从学生表和成绩表中查询出为张三的学生的选课结果。要求显示出学生的学号、姓名和成绩。 6、从学生表和成绩表中查询出成绩>85的选课结果。要求显示出学生的学号、姓名和成绩 7、选出授课教师为张慧所带学生的信息。要求显示出学生的姓名和成绩。将3-7题利用半联接算法的连接过程
时间: 2024-02-06 10:12:52 浏览: 68
成绩查询和选课系统
先给出三张表的结构:
学生表(Student):
| 学号 | 姓名 | 年龄 | 性别 |
|-----|------|------|------|
| 001 | 张三 | 20 | 男 |
| 002 | 李四 | 21 | 女 |
| 003 | 王五 | 19 | 男 |
成绩表(Score):
| 学号 | 课程编号 | 成绩 |
|------|----------|------|
| 001 | 001 | 85 |
| 001 | 002 | 90 |
| 002 | 001 | 70 |
| 002 | 002 | 80 |
| 003 | 002 | 95 |
课程表(Course):
| 课程编号 | 课程名称 | 授课教师 |
|----------|----------|----------|
| 001 | 数据结构 | 张慧 |
| 002 | 计算机网络 | 赵四 |
3、从学生表和成绩表中查询出已经选课学生的正确选课结果。要求显示出学生的学号、姓名和成绩。
```sql
SELECT Student.学号, Student.姓名, Score.成绩
FROM Student, Score
WHERE Student.学号 = Score.学号;
```
4、从学生表、成绩表、课程表中查询出已经选课学生的,课程名称,授课教师。
```sql
SELECT Student.学号, Student.姓名, Course.课程名称, Course.授课教师
FROM Student, Score, Course
WHERE Student.学号 = Score.学号 AND Score.课程编号 = Course.课程编号;
```
5、从学生表和成绩表中查询出为张三的学生的选课结果。要求显示出学生的学号、姓名和成绩。
```sql
SELECT Student.学号, Student.姓名, Score.成绩
FROM Student, Score
WHERE Student.学号 = Score.学号 AND Student.姓名 = '张三';
```
6、从学生表和成绩表中查询出成绩>85的选课结果。要求显示出学生的学号、姓名和成绩
```sql
SELECT Student.学号, Student.姓名, Score.成绩
FROM Student, Score
WHERE Student.学号 = Score.学号 AND Score.成绩 > 85;
```
7、选出授课教师为张慧所带学生的信息。要求显示出学生的姓名和成绩。
```sql
SELECT Student.姓名, Score.成绩
FROM Student, Score, Course
WHERE Student.学号 = Score.学号 AND Score.课程编号 = Course.课程编号 AND Course.授课教师 = '张慧';
```
将3-7题利用半联接算法的连接过程如下:
```sql
SELECT Student.学号, Student.姓名, Score.成绩, Course.课程名称, Course.授课教师
FROM Student
JOIN Score ON Student.学号 = Score.学号
JOIN Course ON Score.课程编号 = Course.课程编号
WHERE Student.姓名 = '张三' OR Score.成绩 > 85 OR Course.授课教师 = '张慧';
```
阅读全文