预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

5/5数据库原理实验4多表查询实验四多表查询1实验目的与要求(1)熟练掌握SQL语句的使用。(2)熟练使用SQL语句进行连接操作。2实验内容(1)找出同一天进入公司服务的员工。(2)查找与“陈诗杰”在同一个单位工作的员工姓名、性别、部门和职务。(3)在Employee表中查询薪水超过员工平均薪水的员工信息。(4)查找有销售记录的客户编号、名称和订单总额。(5)查询没有订购商品的客户编号和客户名称。(6)使用子查询查找32MDRAM的销售情况,要求显示相应的销售员的姓名、性别,销售日期、销售数量和金额,其中性别用“男”、“女”表示。(7)查询OrderMaster表中订单金额最高的订单号及订单金额。(8)在订单主表中查询订单金额大于“E2005002业务员在2008-1-9这天所接的任一张订单的金额”的所有订单信息。(9)查询单价高于400元的商品编号、商品名称、订货数量和订货单价。(10)分别使用左外连接、右外连接、完整外部连接查询单价高于400元的商品编号、商品名称、订货数量和订货单价,并分析比较检索的结果。(11)使用左外连接查找每个客户的客户编号、名称、订货日期、订单金额,其中订货日期不要显示时间,日期格式为“yyyy-mm-dd”,按客户编号排序,同一客户再按订单金额降序排序输出。(12)查找每个员工的销售记录,要求显示销售员的编号、姓名、性别、商品名称、数量、单价、金额和销售日期,其中性别使用“男”和“女”表示,日期使用“yyyy-mm-dd”格式显示。(13)查找16MDRAM的销售情况,要求显示相应的销售员的姓名、性别,销售日期、销售数量和金额,其中性别用“男”、“女”表示。(14)找出公司男业务员所接且订单金额超过2000元的订单号及订单金额。(15)查询每种商品的总销售数量及总销售金额,要求显示出商品编号、商品名称、总数量及总金额,并按商品号从小到大排列。(16)实验问题:①连接操作类型有哪些?分析外连接在现实应用中的意义。②查询表可以用在什么地方?使用查询表要注意哪些地方?③分析SQL语句中的IN和OR关键字有何异同点?它们可以互换吗?给出实例说明。④分析哪几种情况需要使用自表连接。实验脚本如下:(1)找出同一天进入公司服务的员工。selecthireDate48,employeeName48fromEmployee48awhereexists(select*fromEmployee48bwherea.hireDate48=b.hireDate48anda.employeeNo48!=b.employeeNo48)groupbyhireDate48,employeeName48(2)查找与“陈诗杰”在同一个单位工作的员工姓名、性别、部门和职务。selecta.employeeName48,a.department48,a.headShip48,casea.sex48when'F'then'女'when'M'then'男'endsex48fromEmployee48whereemployeeName48='陈诗杰')bfromEmployee48a,(select*wherea.department48=b.department48(3)在Employee表中查询薪水超过员工平均薪水的员工信息。select*fromemployee48a,(selectavg(salary48)平均工资fromemployee48)bwherea.salary48>b.平均工资(4)查找有销售记录的客户编号、名称和订单总额。SELECTa.CustomerNo48,a.CustomerName48,sum(quantity48*price48)订单总额FROMCustomer48a,OrderMaster48b,OrderDetail48cWHEREa.CustomerNo48=b.CustomerNo48andb.orderNo48=c.orderNo48GROUPBYa.CustomerNo48,a.CustomerName48(5)查询没有订购商品的客户编号和客户名称。selecta.customerNo48,customerName48fromcustomer48awherea.customerNo48notin(selectb.customerNo48fromorderMaster48b)(6)使用子查询查找32MDRAM的销售情况,要求显示相应的销售员的姓名、性别,销售日期、销售数量和金额,其中性别用“男”、“女”表示。selectemployeeName48,casesex48when'F'then'女'when'M'then'男'end性别,orderDate48,quantity48,sum(quantit