创建一个视图显示每一门课程的间接先行课(即先行课的先行课)
时间: 2024-01-10 15:04:17 浏览: 256
10、创建视图,显示每名学生的姓名、选修的课程门数、总周学时数、总学分数和加权平均分的查询,
5星 · 资源好评率100%
您好!针对您的问题,可以尝试以下 SQL 语句来创建视图:
```
CREATE VIEW indirect_prereq AS
SELECT t1.course_id AS course, t2.prereq_id AS indirect_prereq
FROM prereq t1
JOIN prereq t2
ON t1.prereq_id = t2.course_id;
```
这个视图查询使用了自连接(self-join)来获取每个先行课的先行课。我们将先行课表格(prereq)自连接两次,分别使用别名 t1 和 t2,然后通过 t1.prereq_id = t2.course_id 这个条件来获取每个课程的间接先行课。
这个视图的输出结果将会有两列,第一列是每个课程的名称,第二列是该课程的间接先行课名称。
希望这个回答能够帮到您!
阅读全文