SQL教程:创建分组视图与数据更新
需积分: 13 120 浏览量
更新于2024-07-12
收藏 278KB PPT 举报
"王珊教授的《数据库系统概论》课件中讲解了如何建立分组视图,并通过实例展示了SQL语言的数据定义、查询、更新、视图和数据控制等内容。"
在数据库管理中,视图是一种虚拟表,它是由SQL查询语句定义的,显示了数据库中特定数据的集合。在本例中,我们关注的是如何建立一个分组视图,该视图将学生的学号(Sno)及其平均成绩(Gavg)作为一个新的数据视图S_G。创建这个视图的SQL语句如下:
```sql
CREATE VIEW S_G(Sno, Gavg)
AS
SELECT Sno, AVG(Grade)
FROM SC
GROUP BY Sno;
```
这个语句的含义是:
1. `CREATE VIEW S_G(Sno, Gavg)`:定义了一个名为S_G的新视图,它有两个字段,分别是Sno(学号)和Gavg(平均成绩)。
2. `SELECT Sno, AVG(Grade)`:选择SC表中的Sno字段,并计算每个学号对应的Grade(成绩)的平均值。
3. `FROM SC`:SC是数据源表,从中获取数据。
4. `GROUP BY Sno`:按Sno字段进行分组,意味着对于SC表中每个不同的学号,都会有一个记录在视图S_G中,记录的Gavg字段是该学号所有成绩的平均值。
在SQL中,视图可以提供数据的安全性和抽象性。例如,用户可以通过S_G视图查看学生的平均成绩,而无需直接访问包含所有详细成绩的SC表。这样可以保护原始数据不受未经授权的修改,并简化查询结构。
除了创建视图,SQL还涵盖了数据的插入、修改和删除等操作。在数据更新方面,SQL提供了以下方法:
1. 插入数据:
- **插入单个元组**:可以使用`INSERT INTO`语句向表中添加新的数据行。例如,插入一个新的学生记录或选课记录。
- **插入子查询结果**:当需要根据查询结果插入数据时,可以将一个子查询的结果插入到目标表中。
2. 修改数据:
- 使用`UPDATE`语句可以更改表中已存在的记录。
3. 删除数据:
- 使用`DELETE`语句可以删除满足特定条件的记录。
此外,SQL还包含了数据控制(如权限管理)、嵌入式SQL(用于在其他编程语言中使用SQL)等内容。这些构成了SQL语言的核心功能,使得数据库管理更加便捷高效。
2012-07-16 上传
2009-07-31 上传
2024-01-11 上传
2023-08-30 上传
2023-10-26 上传
2023-09-02 上传
2023-09-15 上传
2024-01-15 上传
2023-03-22 上传
2023-06-10 上传
正直博
- 粉丝: 43
- 资源: 2万+
最新资源
- 深入理解23种设计模式
- 制作与调试:声控开关电路详解
- 腾讯2008年软件开发笔试题解析
- WebService开发指南:从入门到精通
- 栈数据结构实现的密码设置算法
- 提升逻辑与英语能力:揭秘IBM笔试核心词汇及题型
- SOPC技术探索:理论与实践
- 计算图中节点介数中心性的函数
- 电子元器件详解:电阻、电容、电感与传感器
- MIT经典:统计自然语言处理基础
- CMD命令大全详解与实用指南
- 数据结构复习重点:逻辑结构与存储结构
- ACM算法必读书籍推荐:权威指南与实战解析
- Ubuntu命令行与终端:从Shell到rxvt-unicode
- 深入理解VC_MFC编程:窗口、类、消息处理与绘图
- AT89S52单片机实现的温湿度智能检测与控制系统