第6节函数
目的:理解、掌握、运用几个常用函数。
SQLServer提供了5类函数:聚合函数,日期时间函数,数学函数,字符串函数,系统函数等。
61聚合函数与聚合查询
聚合函数对一组值执行计算并返回单一的值。聚合函数忽略空值。聚合函数经常与SELECT语句的GROUPBY子句一同使用构成聚合查询。
avg
例1查询药品的平均售价SELECTavg单价FROM药品
例2查询现金科目的借方金额的平均值SELECTavg借方金额FROM凭证库WHERE科目名称现金
思考:从语义上分析,查询结果有几行?
max和mi
max表达式:返回表达式的最大值。mi
表达式:返回表达式的最小值。
例3查询凭证库表中借方金额的最大值SELECTmax借方金额FROM凭证库
例4查询凭证库表中借方金额的最小值SELECTmi
借方金额FROM凭证库
例5查询凭证库表中借方金额的最大值和最小值SELECTmax借方金额mi
借方金额FROM凭证库
求均值函数avg的完整格式是:avgALLDISTINCT表达式。该函数返回组中值的平均值,忽略空值。ALL对所有的值进行聚合函数运算。ALL是默认设置。DISTINCT指定
fAVG操作只使用每个值的唯一实例,而不管该值出现了多少次。执行计算时消除空值很重要,因为如果包含空值列,某些计算(如平均值)会不准确。
例如,表T1有一个数值型字段Num,如下:
T1
Num
Name
陈明
50
张力
70
董庆
执行:
SELECTavgNum
FROMT1
结果:60从结果很容易看出,avg忽略了空值。
例如,表T2如下:
T2
Num
Name
50
陈明
50
张力
70
董庆
执行:
SELECTavgdisti
ctNum
FROMT2结果:60
动手练习查询2003年1月份现金凭证的借方金额的最大值、最小值和平均值。
sum
例6求借方金额的汇总SELECTsum借方金额AS借方金额汇总FROM凭证库
例7求借方金额、贷方金额的汇总SELECTsum借方金额AS借方金额汇总sum贷方金额AS贷方金额汇总FROM凭证库
求和函数sum的完整格式是:sumALLDISTINCT表达式,该函数返回表达式中所有值的和。sum只能用于数字列。忽略空值。ALL对所有的值进行聚合函数运算。ALL是默认设置。DISTINCT指定SUM返回唯一值的和。
动手练习查询2003年1月份现金凭证的借方金额总额和贷方金额总额的差值。
fcou
t
例8查询住院收费表中,10205部门有多少条收费记录。SELECTcou
tFROM住院收费WHERE部门号10205
例9查询住院收费表中有多少条收费记录SELECTcou
tFROM住院收费
下面查询是否与上面查询等价?SELECTcou
t医生号FROM住院收费
计数函数cou
t的完整格式是:cou
tALLDISTINCT表达式r