数据库应用技术——SQL Server 2008篇 第3版 作者 延霞 徐守祥 chap5.pptVIP

数据库应用技术——SQL Server 2008篇 第3版 作者 延霞 徐守祥 chap5.ppt

  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文档。上传文档
查看更多
外连接 外连接根据连接时保留表中记录的侧重不同分为“左外连接”、“右外连接”和“全外连接”。 左外连接示例: 列出所有销售的名单并对已有销售额的销售人员给出其销售额 SELECT a.工号 AS 左工号, a.姓名, b.工号 AS 右工号, b.销售额 FROM 销售名单 AS a LEFT JOIN 销售业绩 AS b ON a.工号 = b.工号 运行并查看结果 外连接 右外连接示例:列出所有销售额并对有销售人员的给出其工号和姓名 SELECT a.工号 AS 左工号, a.姓名, b.工号 AS 右工号, b.销售额 FROM 销售名单 AS a RIGHT JOIN 销售业绩 AS b ON a.工号 = b.工号 运行并查看结果 外连接 全外连接示例:列出所有销售人员名单和所有的销售额,销售额与销售人员能对应的则对应给出,无对应的则在对应的列值填充NULL SELECT a.工号 AS 左工号, a.姓名, b.工号 AS 右工号, b.销售额 FROM 销售名单 AS a FULL JOIN 销售业绩 AS b ON a.工号 = b.工号 运行并查看结果 外连接 上机实践:给出“货品信息”表中货品的销售情况,所谓销售情况就是给出每个货品的销售数量、订货日期或没有销售。可见对于没有销售的货品也要列出。 SELECT a.编码, a.名称, a.库存量, b.数量 AS 订货数量, b.订货日期 FROM 货品信息 AS a LEFT JOIN 订单信息 AS b ON a.编码 = b.货品编码 ORDER BY 编码 COMPUTE SUM(数量) BY 编码 运行并查看结果 自连接 自连接就是一个表的两个副本之间的内连接 由订单信息表和其他表给出订购多个货品的客户信息。 SELECT DISTINCT a.客户编号, c.姓名, c.电话, c.地址 FROM 订单信息 a JOIN 订单信息 b ON a.客户编号=b.客户编号 JOIN 客户信息 c ON a.客户编号=c.编号 WHERE a.货品编码b.货品编码 ORDER BY a.客户编号 运行并查看结果 合并结果集 UNION运算符用于将两个或多个检索结果合并成一个结果 例如:合并深圳客户与北京客户的信息 – –选出北京客户的信息 SELECT * INTO 北京客户 FROM 客户信息 WHERE 地址 LIKE 北京% – –和深圳客户合并 SELECT * FROM 深圳客户 UNION SELECT * FROM 北京客户 子查询 当一个查询语句嵌套在另一个查询的查询条件之中时,称为子查询 例如:由订单信息表中,找出最早订单和最晚订单,并按早晚进行排序 SELECT * FROM 订单信息 WHERE 订货日期=(SELECT MIN(订货日期) FROM 订单信息) OR 订货日期=(SELECT MAX(订货日期) FROM 订单信息) ORDER BY 订货日期 子查询 集合成员测试中的子查询 例题:找出订货数量大于10的货品信息 SELECT * FROM 货品信息 WHERE 编码 IN (SELECT 货品编码 FROM 订单信息 as a WHERE (SELECT SUM(数量) FROM 订单信息 as b WHERE a. 货品编码=b. 货品编码)10) 子查询 批量比较测试中的子查询 例题:查询每种货品订货量大于最小一次订货量的订单信息 SELECT * FROM 订单信息 AS a WHERE 数量 ANY (SELECT 数量 FROM 订单信息 AS b WHERE a.货品编码=b.货品编码) 子查询 例题:查询每种货品订货量最大的订单信息 SELECT * FROM 订单信息 AS a WHERE 数量= ALL (SELECT 数量 FROM 订单信息 AS b WHERE a.货品编码=b.货品编码) 使用SQL Server Management Studio进行数据查询与维护 上机实操 打开查询设计器 打开要操作的数据库 打开要操作的表 添加删除修改数据 按条件查询数据 课后习题 1.查询marketing数据库的“销售人员”表,列出每个销售人员的姓名、电话和地址。 2.使用模糊查询,从“销售人员”表中,列出所有地址为深圳的销售人员的信息。 3.查询marketing数据库的“订单信息”表,列出订货量大于20的订单。 4.将“客户信息”表中北京地区的客户信息插入

您可能关注的文档

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档