前言
在上篇介绍SQL函数的文章中展示了单行函数,下面介绍一下多行函数。多行函数是操作一组数据或者多行记录然后返回一个值。多行函数主要功能有统计人数,统计这一行中的最大值,最小值,平均值等。
多行函数
这里主要介绍的是聚合函数,包括count,max,min,avg,sum。其作用域为每个列。语法格式为select 聚合函数(字段)from 表名。且注意所有null值不参与聚合运算。
count | 计算分组的总行数。 |
max | 对分组数据求最大数据。操作类型可以是数字,字符,日期。 |
min | 对分组数据求最小数据。操作类型可以是数字,字符,日期。 |
sum | 对分组数据求和。操作数据类型是数字类型。 |
avg | 对分组数据求平均值。操作数据类型是数字类型。 |
实例
为实现上述聚合函数,这里创建employees表,利用insert关键字添加数据,再使用select关键字查询数据结果验证聚合函数的功能。
创建后的em表,有id、name、post和salary四个字段。
使用insert插入数据。
使用count()函数。name字段这一列共有四行,所以结果为4。
使用max()函数。从salary字段一列中筛选出最大薪资。为5000。
使用min()函数。我们不难发现post一列中是字符型数据,那么max和min也可以操作字符数据,是按照ASCII码大小比较的。
使用sum()函数。如果sum操作的数据类型是字符,不是数字类型,则会返回一个0值。且下面也有警告信息出现。
使用avg()函数。当操作的是数字类型之后,能返回正常计算的结果,且也没有了警告信息。
总结
经过上述实际操作,更能理解到聚合函数的功能,以及能够操作的数据类型。结合生活实际,统计平均薪资,计算入职天数等问题都需要聚合函数的参与,有了他们的帮助,查询计算的速度会快很多。