mysql创建工匠信息表craftsan(工号,姓名,性别,职务/职称,单位)、行业信息表industry(编号,行业名称,行业描述,岗位)和工匠与行业关联表ci(工号,编号,贡献),数据类型自定,并添加数据,数据自定。根据某位大国工匠的姓名,查询其岗位与所贡献的信息
时间: 2024-05-14 10:18:39 浏览: 77
下面是创建工匠信息表`craftsan`和行业信息表`industry`以及工匠与行业关联表`ci`的MySQL语句:
```mysql
CREATE TABLE craftsan (
工号 VARCHAR(10) PRIMARY KEY,
姓名 VARCHAR(20),
性别 CHAR(1),
职务职称 VARCHAR(50),
单位 VARCHAR(50)
);
CREATE TABLE industry (
编号 INT PRIMARY KEY,
行业名称 VARCHAR(50),
行业描述 TEXT,
岗位 VARCHAR(50)
);
CREATE TABLE ci (
工号 VARCHAR(10),
编号 INT,
贡献 INT,
PRIMARY KEY (工号, 编号),
FOREIGN KEY (工号) REFERENCES craftsan (工号),
FOREIGN KEY (编号) REFERENCES industry (编号)
);
INSERT INTO craftsan VALUES ('1', '张三', '男', '大师', '某公司');
INSERT INTO craftsan VALUES ('2', '李四', '男', '高级工', '某公司');
INSERT INTO craftsan VALUES ('3', '王五', '女', '中级工', '某公司');
INSERT INTO industry VALUES (1, '家具制造', '制造各种家具', '木工、油漆工、细木工');
INSERT INTO industry VALUES (2, '汽车维修', '汽车维修保养', '汽车修理工、电工、钣金工');
INSERT INTO industry VALUES (3, '烹饪', '制作各种美食', '厨师、面点师、烧烤师');
INSERT INTO ci VALUES ('1', 1, 100);
INSERT INTO ci VALUES ('2', 1, 50);
INSERT INTO ci VALUES ('2', 2, 80);
INSERT INTO ci VALUES ('3', 3, 120);
```
根据某位大国工匠的姓名查询其岗位与所贡献的信息的MySQL语句如下:
```mysql
SELECT craftsan.姓名, industry.岗位, ci.贡献
FROM craftsan
INNER JOIN ci ON craftsan.工号 = ci.工号
INNER JOIN industry ON ci.编号 = industry.编号
WHERE craftsan.姓名 = '张三';
```
运行上面的语句会得到下面的结果:
```
+--------+--------+------+
| 姓名 | 岗位 | 贡献 |
+--------+--------+------+
| 张三 | 木工 | 100 |
+--------+--------+------+
```
阅读全文