分别建立以上六个视图
时间: 2024-02-10 11:10:46 浏览: 29
由于我无法直接访问EDUC数据库,因此我无法在实际的数据库中创建这些视图。但是,我可以提供一个基于上述视图定义的示例SQL代码,供您参考和执行。
1. V_Computer:
```
CREATE VIEW V_Computer AS
SELECT *
FROM Student_course
WHERE major = 'Computer Science';
```
2. V_S_C_G:
```
CREATE VIEW V_S_C_G AS
SELECT s.sid, s.sname, c.cid, c.cname, sc.score
FROM Student s
INNER JOIN Student_course sc ON s.sid = sc.sid
INNER JOIN Course c ON sc.cid = c.cid;
```
3. V_NUM_AVG:
```
CREATE VIEW V_NUM_AVG AS
SELECT major, COUNT(*) AS num_students, AVG(age) AS avg_age
FROM Student
GROUP BY major;
```
4. V_YEAR:
```
CREATE VIEW V_YEAR AS
SELECT sid, YEAR(birthday) AS birth_year
FROM Student;
```
5. V_AVG_S_G:
```
CREATE VIEW V_AVG_S_G AS
SELECT sid, COUNT(cid) AS num_courses, AVG(score) AS avg_score
FROM Student_course
GROUP BY sid;
```
6. V_AVG_C_G:
```
CREATE VIEW V_AVG_C_G AS
SELECT cid, COUNT(sid) AS num_students, AVG(score) AS avg_score
FROM Student_course
GROUP BY cid;
```
请注意,这些代码仅供参考。在实际的数据库中创建视图时,请仔细检查和调整代码以满足您的需求和数据库结构。