在xscj中创建视图v_score, 要求包含所有成绩在80分以上的学生姓名,课程和成绩
时间: 2023-12-16 09:05:12 浏览: 39
你可以使用以下SQL语句在xscj数据库中创建名为v_score的视图:
```sql
CREATE VIEW v_score AS
SELECT s.name AS student_name, c.name AS course_name, sc.score
FROM student s
JOIN score sc ON s.id = sc.student_id
JOIN course c ON sc.course_id = c.id
WHERE sc.score >= 80;
```
这个视图将会返回所有成绩在80分以上的学生的姓名、课程和成绩信息。在查询中,你可以使用以下SQL语句来调用这个视图:
```sql
SELECT *
FROM v_score;
```
这个查询将会返回所有成绩在80分以上的学生的姓名、课程和成绩信息。注意,这个视图只是一个虚拟的表格,不会实际存储任何数据。每次查询这个视图时,MySQL都会重新计算符合条件的成绩信息。
相关问题
-- 1.创建XSCJ数据库的CS_KC视图,包括计算机专业各学生的学号、选修课的课程号及成绩。要保证对该视图的修改都要符合专业名为计算机这个条件。 -- 2..创建XSCJ数据库的计算机专业学生的平均成绩视图CS_KC_AVG,包括学号(在视图中列名为num)和平均成绩(在视图中列名为score_avg) -- 3.在视图CS_KC中查找计算机专业的学生学号和选修课的课程号 -- 4.查找平均成绩在80分以下的学生的学号和平均成绩 -- 5.创建视图CS_XS,视图中包含计算机专业的学生信息,并向CS_
对不起,根据您提供的信息,我无法直接访问数据库。但是,我可以给您提供一些 SQL 语句的示例,以供参考。
1.创建视图 CS_KC:
```sql
CREATE VIEW CS_KC AS
SELECT XH, KCH, CJ
FROM XSCJ
WHERE ZY = '计算机';
```
2.创建视图 CS_KC_AVG:
```sql
CREATE VIEW CS_KC_AVG AS
SELECT XH AS num, AVG(CJ) AS score_avg
FROM XSCJ
WHERE ZY = '计算机'
GROUP BY XH;
```
3.查询视图 CS_KC 中计算机专业的学生学号和选修课的课程号:
```sql
SELECT XH, KCH
FROM CS_KC;
```
4.查询平均成绩在80分以下的学生的学号和平均成绩:
```sql
SELECT num, score_avg
FROM CS_KC_AVG
WHERE score_avg < 80;
```
5.创建视图 CS_XS:
```sql
CREATE VIEW CS_XS AS
SELECT XH, XM, XB, CSRQ
FROM XS
WHERE ZY = '计算机';
```
向视图 CS_KC_AVG 中插入计算机专业学生的平均成绩:
```sql
INSERT INTO CS_KC_AVG (num, score_avg)
SELECT XH, AVG(CJ)
FROM XSCJ
WHERE ZY = '计算机'
GROUP BY XH;
```
希望对您有所帮助。
1、创建视图 以数据库user_db及数据表student、teacher、class、course、sc为基础(数据表及相关表数据来源于实验三),执行视图的创建、查询、更新和删除,请将实现下列功能的 SQL 语句通过课堂派的“作业”功能提交; (1)在当前数据库user_db中创建信息技术学院学生的视图xx_xs,包括学号、姓名和学院名; (2)在当前数据库user_db中创建信息技术学院学生的视图xx_cj,包括学号、姓名和成绩; (3)当前数据库是xscj,在数据库user_db上创建信息技术学院学生的视图xx_cj1,包括学号、姓名和成绩; (4)创建数据库user_db上的信息技术学院学生平均成绩视图xx_avg,包括学号和平均成绩。
对于问题1,以下是实现功能的SQL语句:
(1)在当前数据库user_db中创建信息技术学院学生的视图xx_xs,包括学号、姓名和学院名:
```
CREATE VIEW xx_xs AS
SELECT s.sid, s.sname, c.cname
FROM student s, class c
WHERE s.cid = c.cid AND c.cname = '信息技术学院';
```
(2)在当前数据库user_db中创建信息技术学院学生的视图xx_cj,包括学号、姓名和成绩:
```
CREATE VIEW xx_cj AS
SELECT s.sid, s.sname, sc.score
FROM student s, sc
WHERE s.sid = sc.sid AND s.cid IN (SELECT cid FROM class WHERE cname = '信息技术学院');
```
(3)当前数据库是xscj,在数据库user_db上创建信息技术学院学生的视图xx_cj1,包括学号、姓名和成绩:
```
USE xscj;
CREATE VIEW xx_cj1 AS
SELECT s.sid, s.sname, sc.score
FROM student s, sc
WHERE s.sid = sc.sid AND s.cid IN (SELECT cid FROM class WHERE cname = '信息技术学院');
USE user_db;
```
(4)创建数据库user_db上的信息技术学院学生平均成绩视图xx_avg,包括学号和平均成绩:
```
CREATE VIEW xx_avg AS
SELECT s.sid, AVG(sc.score) AS avg_score
FROM student s, sc
WHERE s.sid = sc.sid AND s.cid IN (SELECT cid FROM class WHERE cname = '信息技术学院')
GROUP BY s.sid;
```