第五章SQLSERVER数据查询(二).doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章SQLSERVER数据查询(二)

第五章:SQL SERVER 数据查询(二) 目标: 使用Like、Between、In进行模糊查询 在查询中使用聚合函数 使用Group By进行分组查询 进行多表连接查询 重点: 分组查询 多表连接查询 本章难点: 多表连接查询 灵活运用各种查询组合 回顾: Select… from… where…order by… (关键字要按顺序放)。 Select top 3 成绩from 表名 order by 成绩 desc (查询前三名的成绩) Select dateadd(dd,-50,getdate())(获得50天前的日期信息) 一、模糊查询 1.定义:条件不确切的查询,查询的结果返回的数据行也是未知的 2.实现方式: 1)LIKE 作用:通常与通配符一起使用进行匹配查找 语法: SELECT * FROM 表名 WHERE 列名 LIKE 00[^8]%[A,C]%‘ 注意:只能用于字符串列 2)BETWEEN 作用:查找介于两个已知值之间的数据 语法: SELECT [列名,…] FROM 表名 WHERE 列名 BETWEEN 值1 AND 值2 注意: 可用于限定一个数的范围或一个日期的范围 初值小于等于终值,等于时相当于= 不在某个范围用 NOT BETWEEN值1 AND 值2表示 3)IN 作用:把某一字段中内容与所列出的查询内容列表匹配的记录查询出来 语法: SELECT [列名,…] FROM 表名 WHERE 列名 IN (数据值范围) 注意: 可以通过NOT IN 得到所有不匹配列举值的数据 二、聚合函数 1.在查询中还会经常碰到的要求是取某些列的最大值、最小值、平均值等,有时候还需要计算出究竟查询到多少行数据项,此时就需要使用聚合函数 2.定义:能够基于列进行计算,并返回某个值 3.分类: 1)SUM 作用:计算所有数值总和 语法: SELECT SUM(列名) AS 别名 FROM 表名 WHERE 条件 注意: 只能用于数字类型的列 不能直接与可能返回多行的列一起使用来进行查询 2)AVG 作用:计算所有数值平均值 语法: SELECT AVG(列名) AS 别名 From 表名 WHERE 条件 注意: 只能用于数字类型的列 不能直接与可能返回多行的列一起使用来进行查询 3)MAX、MIN 作用:MAX返回最大值 MIN返回最小值 语法: SELECT MAX (列名) AS 别名1 MIN (列名) AS 别名2 From 表名 WHERE 条件 注意: 可以用于数字类型、字符类型和日期类型的列 不能直接与可能返回多行的列一起使用来进行查询 4)COUNT 作用:计算查询结果的总行数 语法1: SELECT COUNT (*) AS 别名 From 表名 WHERE 条件 ――计算所有行数 语法2: SELECT COUNT (列名) AS 别名 From 表名 WHERE 条件 ――计算非空数据行数 注意: COUNT(列名)计算非空值的行数 COUNT (*)计算所有的行数 不能直接与可能返回多行的列一起使用来进行查询 三、分组查询 1.GROUP BY 作用:分组查询关键字 语法1: SELECT 列名1, AVG(列名) AS 别名 FROM 表名 GROUP BY 列名1 语法2: SELECT 列名1,列名2, AVG(列名3) FROM 表名 GROUP BY 列名1,列名2 注意: SELECT后面的列名仅允许以下几项 1.被分组的项 2.为每一个分组返回一个值的表达式(聚合函数) 2.HAVING 作用:进行分组筛选 语法1: SELECT 列名1,列名2, AVG(列名3) AS 别名 FROM 表名 GROUP BY 列名1,列名2 HAVING 条件 3.注意: WHERE子句从数据源中去掉不符合其搜索条件的数据 GROUP BY子句搜集数据行到各个组中,统计函数为各个组计算统计值 HAVING子句去掉不符合其组搜索条件的各组数据行(三者出现的先后顺序如下) Where——group by——having 四、多表联接查询 1.内联结 筛选两个表都存在的数据 语法: 1)在

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档