北大青鸟教学理论部分使用SQLServer管理和查询数据(SQLBase)数据查询TP5V1.0.pptVIP

北大青鸟教学理论部分使用SQLServer管理和查询数据(SQLBase)数据查询TP5V1.0.ppt

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
回顾 代码改错: SELECT SCode,SName,SAddress FROM Students ORDER BY SCode WHERE SSEX = 0 查询全部的男同学的SQL语句怎么写? 查询班上考试成绩前三名的成绩的SQL语句怎么写? 如何使用SQL语句得到50天以前的日期信息? 预习检查 1、分组查询主要要解决什么问题? 2、多表联接主要要解决什么问题?用在什么场合? 本章任务 学员考试信息汇总 学员考试信息统计 从多个数据表中取得考试信息列表 本章目标 使用LIKE、BETWEEN、IN进行模糊查询 在查询中使用聚合函数 使用GROUP BY进行分组查询 进行多表联接查询 模糊查询—LIKE 查询时,字段中的内容并不一定与查询内容完全匹配,只要字段中含有这些内容 模糊查询—IS NULL 把某一字段中内容为空的记录查询出来 模糊查询—BETWEEN 把某一字段中内容在特定范围内的记录查询出来 模糊查询—IN 把某一字段中内容与所列出的查询内容列表匹配的记录查询出来 问题 聚合函数-1 聚合函数-2 问题 分组汇总 分组查询—GROUP BY 分组查询—思考 分组查询—多列分组 分组查询—再看看 分组查询—多列分组 分组查询—问题 分组查询—再看看 分组查询—HAVING 分组查询—对比 分组查询—思考 小结1 以下的查询语句: Select * From A 将得到以下的查询结果: A1 B1 C1 1001 P1 70 1002 P2 60 1001 P1 100 1002 P1 80 1002 P2 90 那么,以下的查询语句将输出哪些信息? Select A1,B1,MAX(C1) FROM A 多表联结查询—问题 多表联结查询—分类 内联结(INNER JOIN) 外联结 ——左外联结 (LEFT JOIN) ——右外联结 (RIGHT JOIN) ——完整外联结(FULL JOIN) 交叉联结(CROSS JOIN) 多表联结查询—内联结-1 多表联结查询—内联结-2 多表联结查询—三表联结 多表联结查询—左外联结 多表联结查询—右外联结 案例分析1—要求 在数据库表中,数据行位置并不重要,但是一个单位中要根据奇数行和偶数行的数据来汇总,在这个汇总的基础上再得到一个数值,因此,要查询数据库表的奇数行和偶数行的总数 数据库表名:TBL 字段名:A 主键字段:IDKEY(标识列,种子:1;增长量:1) 案例分析1—分析 只能依靠标识列的值来进行判断和选取 因为数据行可能存在增加、修改和删除,因此标识列的数据值并不“完全可靠”,例如标识列值为3,并不一定是第三行,因为如果第二行被删除了,它就是第二行,实际上也是偶数行 根据我们前面使用过的SELECT…INTO,可以创建一张新表,顺便创建新的标识列,再在新的标识列上执行奇偶判断 奇数判断依据:标识列值%2不等于0;偶数判断依据:标识列值%2等于0 案例分析1—T-SQL 案例分析2—要求 一家银行发行了新的信用卡,刚开始的时候推广得很好,但是逐渐废卡也越来越多(卡上的余额少于2元,并且用户长时间不使用该卡),因此银行在二月份把这些少于2元的卡从都数据库表中删除了,但是很快问题就来了,用户发现他的卡再也不能使用而投诉,因此只能再把这些卡恢复。 案例分析2—分析 这是一个数据插入的操作,因此要使用INSERT语句来进行 这种方式的数据插入,不是固定的数据项,而是从其它表中筛选数据再插入,因此要使用到INSERT INTO…SELECT结构 插入的数据项是子表中没有的,需要找到子表中没有的这些数据,我们可以把整个语句的INSERT(前半部分)不考虑,先只考虑SELECT(后半部分),SELECT的任务就是找出两个表中不同的项 在前面的联结查询中,使用INNER JOIN…ON可以找出相同的项,编写以下T-SQL: SELECT Users.CardID,2 FROM Users INNER JOIN Account ON (Account.CardIDUsers.CardID) 案例分析2—分析 以上把“=”简单地改为“”,不能找出不同的项,所找到的项比原来的要多很多,因为两个表之间是进行“交叉”对比的,而不是一一对比,所以会对比出很多“不同”的项来;因此,这种方法不可行 考虑我们在上面的左外连接查询,能够查询出左表中存在而相关表不存在的数据项 最后,子表中不存在的数据项,可以再加WHERE条件来进行筛选,S.CardID IS NULL可以判断其是否存在子表中存在 案例分析2—T-SQL 总结 聚合函数都有哪些? 在一个SQL语句中,Gro

文档评论(0)

178****9325 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档