理论第3章-理论幻灯片.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 子查询应用(一);回顾;理论内容;子查询(Subquery)是一个嵌套(nest)在SELECT、INSERT、UPDATE和DELETE语句或其他子查询中的查询,任何允许使用表达式的地方均可使用子查询,但子查询通常用于WHERE子句中。 子查询的实质是:一个 SELECT 子句的查询结果能够作为另一个子句的输入值。 子查询不仅可用在WHERE子句中,还能够用于FROM子句和SELECT子句中。 根据子查询所返回的结果行数,可以将其分为单行子查询和多行子查询。;单行子查询是指子查询的返回结果只有一行数据。 当在主查询的条件语句中引用子查询的结果时,可使用单行比较符(=、、、=、=和)进行比较。 ;查询“江汉路”地区的商品信息,要求输出商品标题和商品团购价。 从地区表查询出地区名称为“江汉路”的地区编号,使用SQL1作为标记。 SELECT areaID FROM Area WHERE areaName=江汉路‘ ;;查询团购价大于平均团购价的商品信息,要求输出商品标题和商品团购价。 ;查询团购价大于“服装”类最高团购价的商品信息,要求输出商品标题和商品团购价。 ;查询团购价大于“服装”类最高团购价的商品信息,要求输出商品标题和商品团购价。 ;子查询通常用于SELECT语句的WHERE子句中,且可以嵌套。 编写复杂的子查询的解决思路是:逐层分解查询。即从最内层的子查询开始分解,将嵌套的SQL语句拆分为一个个独立的SQL语句。 子查询的执行过程遵循“由里及外”原则,即先执行最内层的子查询语句,然后将执行结果与外层的语句进行合并,依次逐层向外扩展并最终形成完整的SQL语句。 一般情况下,联接查询可改为子查询实现;但子查询却不一定可改为联接查询实现。 子查询与联接查询执行效率的比较:当子查询执行结果的行数较大,而主查询执行结果的行数较小时,子查询执行效率较高;而情况相反时,则联接查询执行效率较高。但由于SQL Server 2008之后的查询引擎优化相当高超,这两种查询执行效率的差距非常细微,所以大家可依据自己的编写习惯来选择子查询或联接查询。 ;多行子查询是指子查询的返回结果是多行数据。 多行比较符包括:IN、ALL和ANY|SOME。 ;使用IN时,主查询会与子查询中的每一个值进行比较,如果与其中的任意一个值相同,则返回。NOT IN与IN的含义恰好相反。 ;;查询所有男性顾客所购商品信息,要求输出商品标题和商品团购价,并按照团购价升序排列。 ;查询所有男性顾客所订购商品的全部商品编号。 SELECT ProductID FROM OrdersDetail WHERE ordersID IN( SELECT ordersID FROM Orders WHERE customerID IN( SELECT customerID FROM Customer WHERE gender=男)) 按团购价升序显示所有男性顾客所订购商品的商品标题和团购价。 SELECT title, currentPrice FROM Product WHERE productID IN(SELECT ProductID FROM OrdersDetail WHERE ordersID IN( SELECT ordersID FROM Orders WHERE customerID IN( SELECT customerID FROM Customer WHERE gender=男))) ORDER BY currentPrice ;表达式或字段单行比较运算符 ALL(子查询) ;查询团购价比所有服装类商品团购价都高的商品信息,要求输出商品标题和商品团购价。 ;3.3.2 使用ALL关键字的子查询;查询团购价比所有服装类商品团购价都高的商品信息,要求输出商品标题和商品团购价。 ;表达式或字段 单行比较运算符 ANY|SOME(子查询)。 ;查询团购价比任意一款服装类商品团购价都高的商品信息,要求输出商品标题和商品团购价。;3.4 在FROM子句中使用子查询;为帮助商家提升定价能力,优化产品销售策略,美淘网平台在向每位商家提供产品信息的同时,还提供了该类商品的平均团购价。;3.5 在SELECT子句中使用子查询;查询商品数、已订购商品个数和已订购商品件数。;总结;

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档