仓库管理数据库查询语句练习习题结果单世民仓库习题.docx
- 文档编号:26612380
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:18
- 大小:32.74KB
仓库管理数据库查询语句练习习题结果单世民仓库习题.docx
《仓库管理数据库查询语句练习习题结果单世民仓库习题.docx》由会员分享,可在线阅读,更多相关《仓库管理数据库查询语句练习习题结果单世民仓库习题.docx(18页珍藏版)》请在冰豆网上搜索。
仓库管理数据库查询语句练习习题结果单世民仓库习题
数据库结构如下:
仓库(仓库号,城市,面积)
订购单(职工号,供应商号,订购单号,订购日期)
供应商(供应商号,供应商名,地址)
职工(仓库号,职工号,工资)
具体数据如下:
仓库表:
仓库号
城市
面积
WH1
北京
370
WH2
上海
500
WH3
广州
200
WH4
武汉
400
订购单表:
职工号
供应商号
订购单号
订购日期
E3
S7
OR67
06/23/01
E1
S4
OR73
07/28/01
E5
S4
OR76
05/25/01
E6
S6
OR77
05/26/01
E3
S4
OR79
06/13/01
E1
S2
OR80
08/29/01
E3
S3
OR90
09/01/01
E3
S3
OR91
07/13/01
供应商表:
供应商号
供应商名
地址
S2
名硕电子公司
苏州
S3
振华电子厂
西安
S4
华通电子公司
北京
S6
607厂
郑州
S7
爱华电子厂
北京
职工表:
仓库号
职工号
工资
WH2
E1
1220
WH1
E3
1210
WH2
E4
1250
WH3
E5
1230
WH1
E6
1250
使用SQL语句完成:
DDL
1.写出创建上述表的语句
命令:
createtable仓库(仓库号varchar(8)primarykey,城市varchar(8),面积int);
createtable订购单(订购单号varchar(8)primarykey,职工号varchar(8),供应商号varchar(8),订购日期nchar(8))
createtable供应商(供应商号varchar(8)primarykey,供应商名varchar(18),地址varchar(8))
createtable职工(职工号varchar(8)primarykey,仓库号varchar(8),工资int)DML
2.给出插入上述数据的insert语句
命令:
insertinto仓库values('WH1','北京',370)
insertinto仓库values('WH2','上海',500)
insertinto仓库values('WH3','广州',200)
insertinto仓库values('WH4','武汉',400)
insertinto订购单values('OR67','E3','S7','06/23/01')
insertinto订购单values('OR73','E1','S4','07/28/01')
insertinto订购单values('OR76','E5','S4','05/25/01')
insertinto订购单values('OR77','E6','S6','05/26/01')
insertinto订购单values('OR79','E3','S4','06/13/01')
insertinto订购单values('OR80','E1','S2','08/29/01')
insertinto订购单values('OR90','E3','S3','09/01/01')
insertinto订购单values('OR91','E3','S7','07/13/01')
insertinto供应商values('S2','名硕电子公司','苏州')
insertinto供应商values('S3','振华电子厂','西安')
insertinto供应商values('S4','华通电子公司','北京')
insertinto供应商values('S6','607厂','郑州')
insertinto供应商values('S7','爱华电子厂','北京')
insertinto职工values('E1','WH2',1220)
insertinto职工values('E3','WH1',1210)
insertinto职工values('E4','WH2',1250)
insertinto职工values('E5','WH3',1230)
insertinto职工values('E6','WH1',1250)
单表查询
3.检索职工关系中的所有信息
命令:
select*from职工
结果:
4.检索供应商关系中的所有信息
命令:
select*from供应商
结果:
5.检索六月之后的所有订单
命令:
SELECT*FROM订购单WHEREDATEDIFF(MONTH,'2001-06-0100:
00:
00.000',订购日期)>=0;
结果:
6.检索面积大于400的仓库
命令:
select*from仓库where面积>400
结果:
7.检索哪些职工的工资多于1210
命令:
select*from职工where工资>1210
结果:
8.检索仓库是“WH1”或“WH2”并且面积大于400的城市
命令:
select城市from仓库where仓库号='WH1'and面积>400unionselect城市from仓库where仓库号='WH2'and面积>400
结果:
9.找出仓库面积在400到600的仓库
命令:
select*from仓库where面积between400and600
结果:
10.找出名中包含“厂”的所有供应商的名
命令:
select供应商名from供应商where供应商名like'%厂%'
结果:
11.找出不在西安的供应商
命令:
select*from供应商exceptselect*from供应商where地址='西安'或者:
select*from供应商wherenot地址='西安'
结果:
12.找出不在北京的仓库
命令:
select*from仓库exceptselect*from仓库where城市='北京'
结果:
13.按工资降序排列出所有职工的信息
命令:
select*from职工orderby工资desc
结果:
14.先按仓库号升序排列,再按工资降序排列
命令:
select*from职工orderby仓库号asc,工资desc
结果:
15.在仓库表中统计一下有几个仓库
命令:
selectCOUNT(*)仓库数from仓库
结果:
16.在职工表中统计一下有几个仓库
命令:
selectCOUNT(distinct仓库号)仓库数from职工
结果:
17.求总的仓库面积
命令:
selectsum(面积)总面积from仓库
结果:
聚合查询
18.每个职工的订单数
命令:
select职工号,count(*)订单数from订购单groupby职工号
结果:
19.订单数大于3的职工
命令:
select职工号,COUNT(*)订单数from订购单groupby职工号havingCOUNT(*)>3
结果:
多表查询
20.找出在面积大于400的仓库中工作的职工
命令:
select职工号from职工join仓库on职工.仓库号=仓库.仓库号where面积>400
结果:
21.找出在北京工作的职工和他们的工资情况
命令:
select职工号,工资from职工join仓库on职工.仓库号=仓库.仓库号where仓库.城市='北京'
结果:
22.找出工资大于1215的职工和他们所在的城市
命令:
select职工号,城市from职工join仓库on职工.仓库号=仓库.仓库号where工资>1215
结果:
子查询
23.哪些城市至少有一个订单(从仓库角度考虑)
命令:
selectdistinct城市from订购单join职工on订购单.职工号=职工.职工号join仓库on职工.仓库号=仓库.仓库号
结果:
24.找出没有任何订单的城市
命令:
select城市from仓库exceptselectdistinct城市from订购单join职工on订购单.职工号=职工.职工号join仓库on职工.仓库号=仓库.仓库号
结果:
25.找出和E4有同样工资的所有职工
命令:
selectb.职工号,b.仓库号,b.工资from职工ajoin职工bona.工资=b.工资wherea.职工号='E4'
结果:
26.找出仓库面积大于400的仓库的所有职工
命令:
select职工.职工号,职工.仓库号,职工.工资from职工join仓库on职工.仓库号=仓库.仓库号where面积>400
结果:
27.找出供应商在西安的职工和他们的工资情况
命令:
select职工.职工号,工资from供应商join订购单on供应商.供应商号=订购单.供应商号join职工on订购单.职工号=职工.职工号where地址='西安'
结果:
28.找出不在北京仓库里工作的职工
命令:
select职工号,工资from职工join仓库on职工.仓库号=仓库.仓库号exceptselect职工号,工资from职工join仓库on职工.仓库号=仓库.仓库号where城市='北京'
结果:
29.找出在北京仓库里工作的职工
命令:
select职工号,工资from职工join仓库on职工.仓库号=仓库.仓库号where城市='北京'
结果:
30.求广州和上海仓库职工的总工资
命令:
selectSUM(工资)总工资from职工join仓库on职工.仓库号=仓库.仓库号where城市='广州'or城市='上海'
结果:
31.求所有职工工资都大于1210的仓库的平均面积
命令:
selectavg(面积)平均面积from(select仓库号from职工exceptselect仓库号from职工where工资<1210)ajoin仓库ona.仓库号=仓库.仓库号
结果:
32.求上海仓库中职工的最高工资
命令:
selectMAX(工资)最高工资from职工join仓库on职工.仓库号=仓库.仓库号where城市='上海'
结果:
33.订单数大于或等于2的职工的工资
命令:
selecta.工资from(select职工.职工号,工资from职工join订购单on职工.职工号=订购单.职工号groupby职工.职工号,工资havingCOUNT(*)>=2)a
结果:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 仓库 管理 数据库 查询 语句 练习 习题 结果 单世民