根据给定文件的信息,我们可以详细地探讨SQL语言中的一些关键概念和操作,特别是与数据库结构设计、表的创建以及各种查询语句相关的知识点。 ### DDL(Data Definition Language): 创建表 DDL主要负责数据库模式定义的语言,包括创建、修改和删除数据库对象如表、视图、索引等。在这个案例中,我们需要创建四个表:仓库、订购单、供应商、职工。 #### 创建表的SQL语句: 1. **创建仓库表**: ```sql CREATE TABLE 仓库 ( 仓库号 VARCHAR(8) PRIMARY KEY, 城市 VARCHAR(8), 面积 INT ); ``` 2. **创建订购单表**: ```sql CREATE TABLE 订购单 ( 订购单号 VARCHAR(8) PRIMARY KEY, 职工号 VARCHAR(8), 供应商号 VARCHAR(8), 订购日期 NCHAR(8) ); ``` 3. **创建供应商表**: ```sql CREATE TABLE 供应商 ( 供应商号 VARCHAR(8) PRIMARY KEY, 供应商名 VARCHAR(18), 地址 VARCHAR(8) ); ``` 4. **创建职工表**: ```sql CREATE TABLE 职工 ( 职工号 VARCHAR(8) PRIMARY KEY, 仓库号 VARCHAR(8), 工资 INT ); ``` ### DML (Data Manipulation Language): 插入数据 DML用于执行对数据库中数据的操作,如插入、更新和删除数据。在这个案例中,我们需要为每个表插入特定的数据。 #### 插入数据的SQL语句: 1. **向仓库表插入数据**: ```sql INSERT INTO 仓库 (仓库号, 城市, 面积) VALUES ('WH1', '北京', 370), ('WH2', '上海', 500), ('WH3', '广州', 200), ('WH4', '武汉', 400); ``` 2. **向订购单表插入数据**: ```sql INSERT INTO 订购单 (订购单号, 职工号, 供应商号, 订购日期) VALUES ('OR67', 'E3', 'S7', '06/23/01'), ('OR73', 'E1', 'S4', '07/28/01'), -- 其他记录省略 ('OR91', 'E3', 'S7', '07/13/01'); ``` 3. **向供应商表插入数据**: ```sql INSERT INTO 供应商 (供应商号, 供应商名, 地址) VALUES ('S2', '名硕电子公司', '苏州'), ('S3', '振华电子厂', '西安'), -- 其他记录省略 ('S7', '爱华电子厂', '北京'); ``` 4. **向职工表插入数据**: ```sql INSERT INTO 职工 (职工号, 仓库号, 工资) VALUES ('E1', 'WH2', 1220), ('E3', 'WH1', 1210), -- 其他记录省略 ('E6', 'WH1', 1250); ``` ### 单表查询 接下来,我们来详细了解一些常用的SQL查询语句,这些语句可以帮助我们从已创建的表中获取所需的信息。 1. **检索职工表中的所有信息**: ```sql SELECT * FROM 职工; ``` 2. **检索供应商表中的所有信息**: ```sql SELECT * FROM 供应商; ``` 3. **检索六月之后的所有订单**: 这里需要注意的是,`DATEDIFF`函数并不适用于所有数据库系统。如果是在SQL Server中,可以这样写: ```sql SELECT * FROM 订购单 WHERE DATEADD(month, 6, '2001-01-01') <= 订购日期; ``` 4. **检索面积大于400的仓库**: ```sql SELECT * FROM 仓库 WHERE 面积 > 400; ``` 5. **检索哪些职工的工资多于1210**: ```sql SELECT * FROM 职工 WHERE 工资 > 1210; ``` 6. **检索仓库是“WH1”或“WH2”并且面积大于400的城市**: ```sql SELECT 城市 FROM 仓库 WHERE 仓库号 IN ('WH1', 'WH2') AND 面积 > 400; ``` 7. **找出仓库面积在400到600之间的仓库**: ```sql SELECT * FROM 仓库 WHERE 面积 BETWEEN 400 AND 600; ``` 8. **找出供应商名中包含“厂”的所有供应商**: ```sql SELECT 供应商名 FROM 供应商 WHERE 供应商名 LIKE '%厂%'; ``` 9. **找出不在西安的供应商**: ```sql SELECT * FROM 供应商 WHERE 地址 <> '西安'; ``` 10. **找出不在北京的仓库**: ```sql SELECT * FROM 仓库 WHERE 城市 <> '北京'; ``` 以上就是根据给定的数据库结构和需求所生成的相关知识点。通过这些示例,我们可以了解到如何使用SQL语言进行表的创建、数据的插入以及各种查询操作,这对于日常的数据库管理工作是非常重要的。
- 粉丝: 230
- 资源: 2万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助