仓库管理查询答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.以图5-1的数据库为例,用SQL完成以下检索:
1)检索在北京的供应商的名称。

SELECT * FROM 供应商 WHERE 地址=’北京’
2)检索发给供应商S6的订购单号。

SELECT 订购单号 FROM 订购单 WHERE 供应商号=’S6’
3)检索出职工E6发给供应商S6的订购单信息。

SELECT * FROM 订购单 WHERE 供应商号=’S6’ AND 职工号=’E6’
4)检索出向供应商S3发过订购单的职工的职工号和仓库号。

SELECT 职工号,仓库号 FROM 职工 WHERE 职工号 IN
( SELECT 职工号 FROM 订购单 WHERE 供应商号=’S3’ )
5)检索出目前与S3供应商没有联系的职工信息。

SELECT * FROM 职工 WHERE 职工号 NOT IN
( SELECT 职工号 FROM 订购单 WHERE 供应商号=’S3’ )
6)检索出目前没有任何订购单的供应商信息。

SELECT * FROM 供应商 WHERE NOT EXISTS
( SELECT * FROM 订购单 WHERE 供应商号=供应商.供应商号 )
7)检索出和职工E1、E3都有联系的北京的供应商信息。

SELECT * FROM 供应商 WHERE 地址=‘北京’ and供应商号 IN
( SELECT 供应商号 FROM 订购单 WHERE 职工号=’E1’ )
AND 供应商号 IN
( SELECT 供应商号 FROM 订购单 WHERE 职工号=’E3’ )
8)检索出目前和华通电子公司有业务联系的每个职工的工资。

SELECT 职工号,工资 FROM 职工 WHERE 职工号 IN
(SELECT 职工号 FROM 订购单 WHERE 供应商号 IN
(SELECT 供应商号 FROM 供应商 WHERE 供应商名=’华通电子公司’))
9)检索出与工资在1220元以下的职工没有联系的供应商的名称。

SELECT 供应商名 FROM 供应商 WHERE 供应商号 NOT IN
(SELECT 供应商号 FROM 订购单 WHERE 职工号 IN
(SELECT 职工号 FROM 职工 WHERE 工资 < 1220))
10)检索出向S4供应商发出订购单的仓库所在的城市。

SELECT 城市 FROM 仓库 WHERE 仓库号 IN
(SELECT 仓库号 FROM 职工 WHERE 职工号 IN
(SELECT 职工号 FROM 订购单 WHERE 供应商号=’S4’))
11)检索出在上海工作并且向S6供应商发出了订购单的职工号。

SELECT 职工号 FROM 职工 WHERE 仓库号 IN
(SELECT 仓库号 FROM 仓库 WHERE 城市=’上海’) AND 职工号 IN
(SELECT 职工号 FROM 订购单 WHERE 供应商号=’S6’))
12)检索出在广州工作并且只向S6供应商发出了订购单的职工号。

SELECT 职工号 FROM 职工 WHERE 仓库号 IN
(SELECT 仓库号 FROM 仓库 WHERE 城市=’广州’) AND 职工号 IN
(SELECT 职工号 FROM 订购单 WHERE 供应商号=’S6’) AND 职工号 NOT IN (SELECT 职工号 FROM 订购单 WHERE 供应商号!=’S6’)
13)检索出由工资多于1230元的职工向北京的供应商发出的订购单号。

SELECT 订购单号 FROM 订购单 WHERE 职工号 IN
(SELECT 职工号 FROM 职工 WHERE 工资>1230) AND 供应商号 IN
(SELECT 供应商号 FROM 供应商 WHERE 地址=’北京’)
14)检索出仓库的个数。

SELECT COUNT(*) FROM 仓库
15)检索出有最大面积的仓库信息。

SELECT * FROM 仓库 WHERE 面积=(SELECT MAX(面积) FROM 仓库)
16)检索出所有仓库的平均面积。

SELECT AVG(面积) FROM 仓库
17)检索出向S4供应商发出订购单的那些仓库的平均面积。

SELECT AVG(面积) FROM 仓库 WHERE 仓库号 IN
(SELECT 仓库号 FROM 职工 WHERE 职工号 IN
(SELECT 职工号 FROM 订购单 WHERE 供应商号=’S4’))
18)检索出每个城市的供应商个数。

SELECT 地址,COUNT(*) FROM 供应商 GROUP BY 地址
19)检索出每个仓库中工资多于1220元的职工个数。

SELECT 仓库号,COUNT(*) FROM 职工 WHERE 工资>1220 GROUP BY 仓库号
20)检索出和面积最小的仓库有联系的供应商的个数。

SELECT COUNT(*) FROM 供应商 WHERE 供应商号 IN
(SELECT 供应商号 FROM 订购单 WHERE 职工号 IN
(SELECT 职工号 FROM 职工 WHERE 仓库号 IN
(SELECT 仓库号 FROM 仓库 WHERE 面积=
(SELECT MIN(面积) FROM 仓库))))
21)检索出工资低于本仓库平均工资的职工信息。

SELECT * FROM 职工 out WHERE 工资<
(SELECT AVG(工资) FROM 职工 inne WHERE 仓库号=out.仓库号) . .。

相关文档
最新文档