用sql语句写一个视图并查询平均成绩在90分以上的学生学号和平均成绩
时间: 2024-02-28 18:52:22 浏览: 53
可以使用如下的SQL语句创建视图:
```
CREATE VIEW v_sg AS
SELECT 学号, AVG(成绩) AS 平均成绩
FROM sg
GROUP BY 学号;
```
解释:
首先,我们使用 `CREATE VIEW` 语句来创建一个名为 `v_sg` 的视图。在视图的定义中,我们使用 `SELECT` 语句选择了 `学号` 和 `成绩` 列,并且使用 `AVG` 函数计算了每个学生的平均成绩。我们还使用 `GROUP BY` 子句将数据按照 `学号` 进行分组。
接着,我们可以使用下面的SQL语句查询平均成绩在90分以上的学生学号和平均成绩:
```
SELECT 学号, 平均成绩
FROM v_sg
WHERE 平均成绩 >= 90;
```
解释:
这里我们使用 `SELECT` 语句选择了 `学号` 和 `平均成绩` 列作为查询结果的输出。然后,我们在 `FROM` 子句中指定了视图 `v_sg` 作为数据来源。接着,我们使用 `WHERE` 子句对数据进行筛选,只保留平均成绩在90分以上的学生。
相关问题
用SQL语句在视图sg中查询平均成绩在90分以上的学生学号
可以使用如下的SQL语句进行查询:
```
SELECT 学号
FROM sg
GROUP BY 学号
HAVING AVG(成绩) >= 90;
```
解释:
首先,我们使用 `SELECT` 语句选择了 `学号` 列作为查询结果的输出。然后,我们在 `FROM` 子句中指定了视图 `sg` 作为数据来源。接着,我们使用 `GROUP BY` 子句将数据按照 `学号` 进行分组。最后,我们使用 `HAVING` 子句对分组后的数据进行筛选,只保留平均成绩在90分以上的学生。
注意,这里的平均成绩是使用 `AVG` 函数计算得到的。
4)利用平均成绩视图,使用SQL语句查询平均成绩80分以上的学生的学号和平均成绩 5)使用SQL语句对视图进行更新: 通过软件系学生视图将学号为S1的学生姓名改为lii 通过学生学号及平均成绩视图,将学号为S1的学 生平均成绩改为90分。 6)删除平均成绩视图
好的,针对你的问题,以下是对应的SQL语句:
4. 利用平均成绩视图,查询平均成绩80分以上的学生的学号和平均成绩:
```sql
SELECT 学号, 平均成绩
FROM 学生成绩平均视图
WHERE 平均成绩 > 80;
```
5. 使用SQL语句对视图进行更新:
- 通过软件系学生视图将学号为S1的学生姓名改为lii:
```sql
UPDATE 软件系学生视图
SET 学生姓名 = 'lii'
WHERE 学号 = 'S1';
```
- 通过学生学号及平均成绩视图,将学号为S1的学生平均成绩改为90分:
```sql
UPDATE 学生成绩平均视图
SET 平均成绩 = 90
WHERE 学号 = 'S1';
```
6. 删除平均成绩视图:
```sql
DROP VIEW 学生成绩平均视图;
```
以上就是对应的SQL语句,供您参考。