第13章企业数据管理实战进阶在本章中,并不介绍复杂的SQL命令,而是以管理需求为出发点,使用SQL命令达到管理的需求。在完成前面各章的操作后,才能进行本章的练习,本章将介绍10个管理需求示例,分别如下。
13-1 管理需求示例一
为了给业务人员提供年终时人力调度的依据,所以需要找出数据库中购买本公司产品数量低于60 Pcs的客户群。
(1)查询出所有客户订单及客户相关数据(使用订单及客户表)。
SELECT ORD.CUSTID, ORDID, CUSTOMER.CUSTNAME, CUSTPHONE
FROM ORD, CUSTOMER
WHERE ORD.CUSTID=CUSTOMER.CUSTID;
(2)查询出所有客户订购的产品类别及数量(使用产品、订单、客户表)。
SELECT PRODUCT.PROID, PRONAME, CUSTOMER.CUSTNAME, ORD.CUSTID, QTY
FROM PRODUCT, CUSTOMER, ORD
WHERE PRODUCT.PROID=ORD.PROID
AND CUSTOMER.CUSTID=ORD.CUSTID;
(3)查询出客户所订购产品数量在60 Pcs以内的客户数据(使用订单及客户表)。
SELECT CUSTOMER.CUSTID, CUSTNAME, ORD.QTY
FROM CUSTOMER, ORD
WHERE (QTY) IN
(SELECT QTY FROM ORD WHERE QTY <= 60)
AND CUSTOMER.CUSTID=ORD.CUSTID;
执行的结果如下。
(1)先查询出所有客户订单及客户相关数据,执行结果如下:
SQL>
SQL>
SQL> select ord.custid,ordid,customer.custname,custphone
2 from ord,customer
3 where ord.custid=customer.custid;
Oracle 11g数据库最佳入门教程
CUSTID ORDID CUSTNAME CUSTPHONE
---------- ---------- ---------------------- ------------ C001 CR01 南亚电子股份有限公司 (02)-111111
C002 CR02 华通电子股份有限公司 (04)-111111
C003 CR03 欣兴电子股份有限公司 (02)-111112
C004 CR04 群策电子股份有限公司 (03)-111111
C005 CR05 联致电子股份有限公司 (03)-111112
C006 CR06 旭德电子股份有限公司 (035)-11111
C007 CR07 联能电子股份有限公司 (035)-11112
C008 CR08 铭望电子股份有限公司 (04)-111112
C009 CR09 柏拉图电子股份有限公司 (07)-111111
C010 CR10 定颖电子股份有限公司 (07)-111112
C011 CR11 南华电子股份有限公司 (02)-111111
CUSTID ORDID CUSTNAME CUSTPHONE
---------- ---------- ---------------------- ------------ C012 CR12 华欣电子股份有限公司 (04)-111111
C013 CR13 欣群电子股份有限公司 (02)-111112
C014 CR14 群联电子股份有限公司 (03)-111111
C015 CR15 联旭电子股份有限公司 (03)-111112
C016 CR16 旭联电子股份有限公司 (035)-11111
C017 CR17 联铭电子股份有限公司 (035)-11112
C018 CR18 铭图电子股份有限公司 (04)-111112
C019 CR19 柏图电子股份有限公司 (07)-111111
C020 CR20 南颖电子股份有限公司 (07)-111112
C021 CR21 旭联电子股份有限公司 (035)-11111
C022 CR22 联铭电子股份有限公司 (035)-11112
CUSTID ORDID CUSTNAME CUSTPHONE
---------- ---------- ---------------------- ------------ C023 CR23 铭图电子股份有限公司 (04)-111112
C024 CR24 柏图电子股份有限公司 (07)-111111
C025 CR25 南颖电子股份有限公司 (07)-111112
25 rows selected.
SQL>
SQL>
(2)查询出所有客户所订购产品类别及数量,执行结果如下:SQL>
企业数据管理实战进阶第13章
SQL>
SQL> select product.proid,proname,customer.custname,ord.custid,qty
2 from product,customer,ord
3 where product.proid=ord.proid
4 and customer.custid=ord.custid;
PROID PRONAME CUSTNAME CUSTID QTY
--------------------------------------------- ----------
P001 主板 南亚电子股份有限公司 C00130
P001 主板 华通电子股份有限公司 C00260
P001 主板 欣兴电子股份有限公司 C00350
P001 主板 群策电子股份有限公司 C00480
P001 主板 联致电子股份有限公司 C005100
P002 处理器 旭德电子股份有限公司 C006150
P002 处理器 联能电子股份有限公司 C00730
P002 处理器 铭望电子股份有限公司 C00815
P002 处理器 柏拉图电子股份有限公司 C009200
P002 处理器 定颖电子股份有限公司 C010300
P003 内存 南华电子股份有限公司 C01130
PROID PRONAME CUSTNAME CUSTID QTY
--------------------------------------------- ----------
P003 内存 华欣电子股份有限公司 C01260
P003 内存 欣群电子股份有限公司 C01350
P003 内存 群联电子股份有限公司 C01480
P003 内存 联旭电子股份有限公司 C015100
P004 硬盘 旭联电子股份有限公司 C016150
P004 硬盘 联铭电子股份有限公司 C01730
P004 硬盘 铭图电子股份有限公司 C01815
P004 硬盘 柏图电子股份有限公司 C019 200
P004 硬盘 南颖电子股份有限公司C020 300
P005 显卡 旭联电子股份有限公司C021 30
P005 显卡 联铭电子股份有限公司 C022 60
PROID PRONAME CUSTNAME CUSTID QTY
--------------------------------------------- ----------
P005 显卡铭图电子股份有限公司 C023 50
P005显卡柏图电子股份有限公司 C024 80
P005 显卡南颖电子股份有限公司 C025 100
25 rows selected.