汽车修理管理系统,各个汽车修理配件的相关数据查询
项目背景介绍本系统是汽车修理管理系统。主要功能是管理各个汽车修理配件的相关数据。任务概述本系统由三张表组成,具体如下:
汽车修理表:QCXL(编号(键),牌号,修理项目,送修日期,完工日期,修理小时)
零件库存表:LJKC(零件号(键),零件名,成本,价格,库存量,最低库存,订货量)
零件用量表:LJYL(编号,零件号,数量)
以下数据是表中的内容
汽车修理表
编号 | 牌号 | 修理项目 | 送修日期 | 完工日期 | 修理小时 |
3001 3002 3003 3004 3005 | A2020203 F1212123 甲B210100 J333-666 A2221234 | 点火线圈 刹车 喷漆 转换动轴 大修 | 01\12\99 02\05\99 02\13\99 05\08\99 06\28\99 | 01\15\99 02\10\99 02\13\99 05\15\99 07\27\99 | 2.0 3.2 6.0 18.0 98.0 |
零件库存表
零件号 | 零件名 | 成本 | 价格 | 库存量 | 最低库存 | 订货量 |
300001 300002 300003 300004 300005 | 前灯 方向盘 离合器 活塞环 反光镜 | 36.00 78.801 600.00 144.00 16.00 | 40.00 80.00 650.00 156.00 17.00 | 42 15 3 60 100 | 20 5 4 25 30 | 12 2 2 4 14 |
零件用量表
编号 | 零件 | 数量 |
3002 3005 3005 3005 | 300003 300001 300004 300005 | 1 2 5 2 |
具体要求:用SQL语言实现下列功能的SQL语句代码
(1). 创建以上三个表,并根据表中的数据选择适合的数据类型。
-- 创建汽车修理表 create table qcxl ( 编号 int primary key, 牌号 varchar(20), 修理项目 varchar(50), 送修日期 date, 完工日期 date, 修理小时 decimal(10, 2) ); -- 创建零件库存表 create table ljkc ( 零件号 int primary key, 零件名 varchar(50), 成本 decimal(10, 2), 价格 decimal(10, 2), 库存量 int, 最低库存 int, 订货量 int ); -- 创建零件用量表 create table ljyl ( 编号 int, 零件号 int, 数量 int, foreign key (编号) references qcxl(编号), foreign key (零件号) references ljkc(零件号) ); -- 插入数据到汽车修理表 insert into qcxl values (3001, 'A2020203', '点火线圈', '1999-12-01', '1999-12-15', 2.0); insert into qcxl values (3002, 'F1212123', '刹车', '1999-05-02', '1999-10-02', 3.2); insert into qcxl values (3003, '甲B210100', '喷漆', '1999-02-13', '1999-02-13', 6.0); insert into qcxl values (3004, 'J333-666', '转换动轴', '1999-08-05', '1999-05-15', 18.0); insert into qcxl values (3005, 'A2221234', '大修', '1999-06-28', '1999-07-27', 98.0); -- 插入数据到零件库存表 insert into ljkc values (300001, '前灯', 36.00, 40.00, 42, 20, 12); insert into ljkc values (300002, '方向盘', 78.80, 80.00, 15, 5, 2); insert into ljkc values (300003, '离合器', 600.00, 650.00, 3, 4, 25); insert into ljkc values (300004, '活塞环', 144.00, 156.00, 60, 25, 30); insert into ljkc values (300005, '反光镜', 16.00, 17.00, 100, 14, 4); -- 插入数据到零件用量表 insert into ljyl values (3002, 300003, 1); insert into ljyl values (3005, 300001, 2); insert into ljyl values (3005, 300004, 5); insert into ljyl values (3005, 300005, 2);
预览:
(2). 设置表的主外键。
已在上面的创建表语句中设置。
(3). 用insert语句向表中插入以上数据。
已在(1)中完成。
(4). 检索使用了零件号为300005的汽车编号与牌号。
select qcxl.编号, qcxl.牌号 from qcxl join ljyl on qcxl.编号 = ljyl.编号 where ljyl.零件号 = 300005;
查询结果:
(5). 检索修理小时超过10小时的汽车的牌号和修理项目。
select 牌号, 修理项目 from qcxl where 修理小时 > 10;
查询结果:
(6). 把最低库存量低于5的零件库存量提高10个。
select 牌号, 修理项目 update ljkc set 库存量 = 库存量 + 10 where 最低库存 < 5;
(7). 在零件用量表中删除零件名为“反光镜”的零件用量元组。
delete from ljyl where 零件号 = (select 零件号 from ljkc where 零件名 = '反光镜');
还没有留言,还不快点抢沙发?