实验二 连接查询

一、实验目的

掌握涉及一个以上数据表的查询方法。

二、实验内容

1、连接查询

  • 查询“国皓科技有限公司”的订单信息

    查询语句:

    SELECT *
    FROM Customer,Sell_Order
    WHERE Sell_Order.CustomerID=Customer.CustomerID AND Customer.CompanyName='国皓科技有限公司'
    

    执行结果:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aX204bu1-1654697219608)(D:\typora\Picture\image-20220503230302298.png)]

  • 查询“三川实业有限公司”订购的商品信息,输出字段为:CompanyName,ProductName,Price,SellOrderNumber。

    查询语句:

    SELECT CompanyName,ProductName,Price,SellOrderNumber
    FROM Product,Customer,Sell_Order
    WHERE Product.ProductID=Sell_Order.ProductID And Sell_Order.CustomerID=Customer.CustomerID AND Customer.CompanyName='三川实业有限公司'
    

    执行结果:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yq13172G-1654697219609)(D:\typora\Picture\image-20220503230832228.png)]

  • 查询各公司各种商品的订单数量,输出字段为:CompanyName,ProductName,订单数量,按照订单数量升序排列。

    查询语句:

    SELECT CompanyName,ProductName,COUNT(Sell_Order.SellOrderID) 订单数量
    FROM Product,Customer,Sell_Order
    WHERE Sell_Order.ProductID=Product.ProductID AND Customer.CustomerID =Sell_Order.CustomerID
    GROUP BY CompanyName,ProductName
    ORDER BY 订单数量 ASC
    

    执行结果:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yFoKf6Pz-1654697219610)(D:\typora\Picture\image-20220503231935727.png)]

  • 查询各公司各种商品的订货总量、总金额。输出字段为:CompanyName,ProductName,订货总量,总金额。按照总金额降序排列。

    查询语句:

    SELECT CompanyName,ProductName,SUM(SellOrderNumber) 订货总量,SUM(Price*SellOrderNumber) 总金额
    From Customer,Sell_Order,Product
    WHERE Customer.CustomerID=Sell_Order.CustomerID AND Sell_Order.ProductID=Product.ProductID
    GROUP BY Customer.CompanyName,Product.ProductName
    ORDER BY 总金额 DESC
    

    执行结果:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LlYv8fBP-1654697219610)(D:\typora\Picture\image-20220503232723449.png)]

二、自身连接

  • 查询和“章宏”同一部门的员工号,员工姓名。

    查询语句:

    SELECT FIRST.EmployeeID,FIRST .EmployeeName
    FROM Employee FIRST,Employee SECOND
    WHERE FIRST.DepartmentID=SECOND.DepartmentID AND FIRST.EmployeeName!='章宏'AND SECOND.EmployeeName='章宏'
    

    执行结果:

    在这里插入图片描述

  • 查询既订购过3号产品,又订购过4号产品的客户号。

    查询语句:

    SELECT DISTINCT SECOND.CustomerID
    FROM Sell_Order FIRST,Sell_Order SECOND
    WHERE FIRST.CustomerID=SECOND.CustomerID AND FIRST.ProductID=3 AND SECOND.ProductID=4
    

    执行结果:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C5OiJP49-1654697219611)(D:\typora\Picture\image-20220503234235618.png)]

三、外连接

  • 查询没有接收到订单的员工姓名。

    查询语句:

    SELECT EmployeeName 
    FROM Employee LEFT OUTER JOIN Sell_Order ON(Employee.EmployeeID=Sell_Order.EmployeeID)
    WHERE SellOrderID IS NULL
    

    执行结果:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CeRJOTFM-1654697219611)(D:\typora\Picture\image-20220503235014181.png)]

  • 查询没有任何订购信息的客户公司名。

    查询语句:

    SELECT CompanyName
    FROM Customer LEFT OUTER JOIN Sell_Order ON(Customer.CustomerID=Sell_Order.CustomerID)
    WHERE SellOrderID IS NULL
    

    执行结果:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VDGQ2Dlh-1654697219612)(D:\typora\Picture\image-20220503235352056.png)]

  • 查询没有被订购的商品名称.

    查询语句:

    SELECT ProductName
    FROM Product LEFT OUTER JOIN Sell_Order ON(Product.ProductID=Sell_Order.ProductID)
    WHERE SellOrderID IS NULL
    

    执行结果:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fzZ1tL9W-1654697219612)(D:\typora\Picture\image-20220503235626346.png)]

三、实验总结

本次实验涉及等值连接、自身连接、外连接,对于三种连接方式掌握更加熟练。学会了等值连接的方法、OUTER JOIN语句

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值