SQL 函数大全.docVIP

  1. 1、本文档共12页,可阅读全部内容。
  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文档。上传文档
查看更多
第6节 函数 目的:理解、掌握、运用几个常用函数。 SQL Server提供了5类函数:聚合函数,日期时间函数,数学函数,字符串函数,系统函数等。 6.1聚合函数与聚合查询 聚合函数对一组值执行计算并返回单一的值。聚合函数忽略空值。聚合函数经常与SELECT语句的GROUP BY子句一同使用构成聚合查询。 avg() 例1 查询药品的平均售价 SELECT avg(单价) FROM 药品 例2 查询现金科目的借方金额的平均值 SELECT avg(借方金额) FROM 凭证库 WHERE 科目名称 = 现金 思考:从语义上分析,查询结果有几行? max()和min(): max ( 表达式 ):返回表达式的最大值。 min ( 表达式 ):返回表达式的最小值。 例3 查询凭证库表中借方金额的最大值 SELECT max(借方金额) FROM 凭证库 例4查询凭证库表中借方金额的最小值 SELECT min(借方金额) FROM 凭证库 例5查询凭证库表中借方金额的最大值和最小值 SELECT max(借方金额), min(借方金额) FROM 凭证库 求均值函数avg()的完整格式是:avg ( [ ALL | DISTINCT ] 表达式 )。该函数返回组中值的平均值,忽略空值。ALL对所有的值进行聚合函数运算。ALL 是默认设置。DISTINCT指定 AVG 操作只使用每个值的唯一实例,而不管该值出现了多少次。执行计算时消除空值很重要,因为如果包含空值列,某些计算(如平均值)会不准确。 例如,表T1有一个数值型字段Num,如下: T1 Num Name 陈明 50 张力 70 董庆 执行: SELECT avg(Num) FROM T1 结果: 60 从结果很容易看出,avg忽略了空值。 例如,表T2如下: T2 Num Name 50 陈明 50 张力 70 董庆 执行: SELECT avg(distinct Num) FROM T2 结果:60 动手练习 查询2003年1月份现金凭证的借方金额的最大值、最小值和平均值。 sum() 例6 求借方金额的汇总 SELECT sum(借方金额) AS 借方金额汇总 FROM 凭证库 例7 求借方金额、贷方金额的汇总 SELECT sum(借方金额) AS 借方金额汇总, sum(贷方金额) AS 贷方金额汇总 FROM 凭证库 求和函数sum()的完整格式是:sum ( [ ALL | DISTINCT ] 表达式 ),该函数返回表达式中所有值的和。sum只能用于数字列。忽略空值。ALL对所有的值进行聚合函数运算。ALL 是默认设置。DISTINCT指定 SUM 返回唯一值的和。 动手练习 查询2003年1月份现金凭证的借方金额总额和贷方金额总额的差值。 count(): 例8 查询住院收费表中,10205部门有多少条收费记录。 SELECT count(*) FROM 住院收费 WHERE 部门号 =10205 例9 查询住院收费表中有多少条收费记录 SELECT count(*) FROM 住院收费 下面查询是否与上面查询等价? SELECT count(医生号) FROM 住院收费 计数函数count()的完整格式是:count ( { [ ALL | DISTINCT ] 表达式 } | * ) ),该函数返回组中行的数量。 count(*) 返回组中行的数量,count(表达式) 对组中的每一行都计算 表达式并返回表达式取值不为空值的行的数量。默认情况下,以上两种用法都包括重复行,而count(DISTINCT 表达式) 对表达式的重复值只统计一次。ALL 是默认设置。 已知表T1和T2,表中均含有空值。请分析下面查询的结果: T1 Num Name Null 陈明 50 张力 70 董庆 T2 Num Name 50 陈明 50 张力 70 董庆 Null 李华 1) SELECT count(*) FROM T1 2) SELECT count(num) FROM T1 3) SELECT count(distinct num) FROM T2 注意:使用聚合函数的查询称为聚合查询,查询结果在没有使用GROUP BY 子句的情况下最多只有一行。而且,在没有使用GROUP BY子句的情况下,SELECT后面的每个表达式都要使用聚合函数。例如,以下SQL语句是错误的: SELECT 科目编码, 科目名称, min(借方金额) FROM 凭证库 在查询分析器中执行,将返回以下错误信息: 服务器: 消息 8118,级别 16,状态 1,行 1 列 凭证库.科目编

文档评论(0)

精华文档888 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档