(12) 在订单主表中查询订单金额大于“E2005002业务员在2008-1-9这天所接的任一张订单的金额”的所有订单信息。 命令:
SELECT a.orderNo ,CustomerNO ,salerNo ,orderDate ,invoiceNo ,sum(quantity *price ) orderSum
FROM OrderDetail a,OrderMaster b WHERE a.orderNo =b.orderNo
GROUP BY a.orderNo ,CustomerNO ,salerNo ,orderDate ,invoiceNo HAVING sum(quantity *price ) > ALL ( SELECT sum(quantity *price ) FROM OrderDetail a,OrderMaster b WHERE a.orderNo =b.orderNo and salerNo ='E2005002' and orderDate ='2008-01-09 00:00:00.000' GROUP BY a.orderNo ) 结果:
(13) 查询既订购了“52倍速光驱”商品,又订购了“17寸显示器”商品的客户编号、订单编号和订单金额。 命令:
select b.CustomerNo ,a.orderNo ,sum(quantity *price ) as total from OrderDetail as a,OrderMaster as b,Product as c, (select d.orderNo from OrderDetail as d,Product as e where ProductName ='17寸显示器'and d.ProductNo =e.ProductNo ) as f
where c.ProductName ='52倍速光驱' and a.orderNo =b.orderNo and a.orderNo =f.orderNo group by b.CustomerNo ,a.orderNo 结果:
(14) 查找与“陈诗杰”在同一个单位工作的员工姓名、性别、部门和职务。 命令:
select a.employeeName ,a.sex ,a.department ,a.headShip
from Employee as a,(select * from Employee where employeeName ='陈诗杰') as b