SQL复习:建表、更新与查询操作详解
需积分: 5 65 浏览量
更新于2024-06-16
收藏 444KB DOCX 举报
"这篇资料主要涵盖了SQL语言的基础知识,包括创建表、更新表结构、管理表内容以及查询数据等核心概念。"
在SQL(Structured Query Language)中,数据库管理和操作的核心在于对数据的创建、修改和查询。以下是针对标题和描述中的知识点的详细解释:
1. 创建表(建表)
SQL中创建表的语法是`CREATE TABLE`,用于定义表的结构,包括列名(Attributes)和数据类型(Data Types)。例如,创建一个名为`instructor`的表,包含`ID`、`name`、`dept_name`和`salary`四个字段。`ID`作为主键,`dept_name`作为外键关联到`department`表。完整的创建语句如下:
```
CREATE TABLE instructor (
ID char(5),
name varchar(20) NOT NULL,
dept_name varchar(20),
salary numeric(8,2),
PRIMARY KEY (ID),
FOREIGN KEY (dept_name) REFERENCES department
);
```
2. 更新表结构
- `ALTER TABLE R ADD A`:向表`R`中添加属性`A`。
- `ALTER TABLE R DROP A`:从表`R`中删除属性`A`。
- `DROP TABLE R`:删除表`R`。
3. 更新表的内容
- `INSERT INTO R VALUES (v1, v2, ..., vn)`:向表`R`中插入一个新的元组(行),值分别为`v1`到`vn`。
- `DELETE FROM R`:删除表`R`中的所有元组。
- `UPDATE R SET A = v WHERE P`:更新表`R`中满足条件`P`的元组,将属性`A`设置为`v`。
4. 查询数据
- `SELECT A1, A2, ..., An FROM R1, R2, ..., Rm WHERE P`:从关系`R1`, `R2`, ..., `Rm`中选择满足条件`P`的属性`A1`, `A2`, ..., `An`。
- `SELECT DISTINCT dept_name FROM instructor`:从`instructor`表中去除重复的`dept_name`信息。
- `SELECT ID, name, salary/12 FROM instructor`:查询所有老师的工号、姓名和月薪。
- `SELECT ID, name, salary/12 AS monthly_salary FROM instructor`:同上,但`salary/12`别名为`monthly_salary`。
- `SELECT name FROM instructor WHERE dept_name = 'Comp.Sci.' AND salary > 80000`:找出计算机科学系薪水超过80000的老师名字。
- `SELECT names_of_instructors, course_id FROM instructor, courses WHERE instructor.dept_name = 'Art' AND instructor.ID = courses.professor_id`:找到艺术系所有教过课程的老师名字和课程编号(笛卡尔积)。
这些基本的SQL操作是数据库管理的基础,掌握了它们,就能有效地管理和操作数据库中的数据。在实际应用中,还需要学习更复杂的查询,如联接(JOIN)、子查询(Subquery)、分组(GROUP BY)和排序(ORDER BY)等。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2024-03-25 上传
2023-03-16 上传
2022-04-04 上传
2020-12-04 上传
2022-01-05 上传
2021-10-03 上传
一杯水果茶!
- 粉丝: 2601
- 资源: 27
最新资源
- dostavka24:Dostavka24管理面板
- rpi-monitor-cam-led
- 004泥浆护壁回转钻孔灌注桩施工工艺.zip
- abbyjs:启发于MingGeJs,我也想写个霸气的自述文件和霸气的jQuery
- busfactor:如果fariz被公交车撞到了怎么办?
- DirectX修复工具&下载地址.zip
- uk-companies-scraper:部分出版物这是未来
- Sticky-nav-bar
- Hendrix-开源
- Proyecto-DWEC:Prosarecto del2ºtrimestre de Desarrollo网站和客户端
- 旅游及票务网站模版
- base-repo:GOSCPS基本存储库
- 【QGIS跨平台编译】之【FreeXL跨平台编译】:源码及跨平台编译工程(支撑QGIS跨平台编译,以及二次研发)
- 哈希表是什么及它的作用
- MONGO和MANGO一样甜
- grimrock-import:从Grimrock 1导入到Grimrock 2的资产集合