创建工匠信息表craftsman(工号,姓名,性别,职务/职称,单位)、行业信息表 industry(编号,行业名称,行业描述,岗位)和工匠与行业关联表ci(工号,编号,贡献),并为 三个表添加数据。根据某位大国工匠的姓名,查询其岗位和所做贡献的信息
时间: 2024-06-09 15:06:10 浏览: 96
创建工匠信息表Craftsman:
```sql
CREATE TABLE Craftsman (
id INT PRIMARY KEY,
name VARCHAR(50),
gender VARCHAR(10),
position VARCHAR(50),
unit VARCHAR(50)
);
```
添加数据:
```sql
INSERT INTO Craftsman (id, name, gender, position, unit) VALUES
(1, '张三', '男', '高级工程师', '中国航天科技集团公司'),
(2, '李四', '女', '技师', '中车青岛四方机车车辆股份有限公司'),
(3, '王五', '男', '高级技师', '中国船舶重工集团公司'),
(4, '赵六', '男', '工程师', '中国航空发动机集团有限公司');
```
创建行业信息表Industry:
```sql
CREATE TABLE Industry (
id INT PRIMARY KEY,
name VARCHAR(50),
description VARCHAR(200),
position VARCHAR(50)
);
```
添加数据:
```sql
INSERT INTO Industry (id, name, description, position) VALUES
(1, '航空航天', '涉及飞机、导弹、卫星、火箭等领域', '工程师'),
(2, '铁路', '涉及铁路机车车辆、轨道交通等领域', '技师'),
(3, '海洋工程', '涉及船舶、海上平台、深海勘探等领域', '高级工程师'),
(4, '船舶', '涉及船舶设计、制造、维修等领域', '高级技师');
```
创建工匠与行业关联表CI:
```sql
CREATE TABLE CI (
craftsman_id INT,
industry_id INT,
contribution VARCHAR(100),
PRIMARY KEY (craftsman_id, industry_id),
FOREIGN KEY (craftsman_id) REFERENCES Craftsman (id),
FOREIGN KEY (industry_id) REFERENCES Industry (id)
);
```
添加数据:
```sql
INSERT INTO CI (craftsman_id, industry_id, contribution) VALUES
(1, 1, '参与过神舟系列飞船的研制'),
(2, 2, '主持过某型号电力机车的设计'),
(3, 3, '主持过某深海勘探船的设计'),
(4, 4, '主持过某型号航空发动机的研制');
```
根据某位大国工匠的姓名,查询其岗位和所做贡献的信息:
```sql
SELECT c.position, ci.contribution
FROM Craftsman c
JOIN CI ci ON c.id = ci.craftsman_id
WHERE c.name = '张三';
```
输出结果:
```
+------------+--------------------------------------+
| position | contribution |
+------------+--------------------------------------+
| 高级工程师 | 参与过神舟系列飞船的研制 |
+------------+--------------------------------------+
```
阅读全文