SQL聚合函数

时间:2018-11-15 17:50:33  来源:igfitidea点击:

在本教程中,我们将向您介绍聚合函数概念和常见的SQL聚合函数。

SQL聚合函数的介绍

聚合函数允许您对一组值执行计算以返回单个的标量值。
我们经常对GROUP BY和SELECT语句的HAVING子句使用聚合函数。

以下是最常用的SQL聚合函数:
AVG–计算一组值的平均值。
COUNT–统计指定表或视图中的行数。
MIN–获取一组值中的最小值。
MAX -获取一组值中的最大值。
SUM–计算值的和。

请注意,上面除了COUNT函数以外所有的聚合函数都忽略NULL值。

SQL聚合函数语法

要调用聚合函数,请使用以下语法:

aggregate_function (DISTINCT | ALL expression)

首先,指定要使用的聚合函数,例如MIN、MAX、AVG、SUM或COUNT。
第二,在括号内放置DISTINCT或ALL修饰符后跟表达式。如果显式使用DISTINCT修饰符,则聚合函数将忽略重复值,只考虑唯一值。如果使用ALL修饰符,则聚合函数将对所有值进行计算或求值。如果未显式指定任何修饰符,则默认情况下使用ALL修饰符。

SQL聚合函数示例

COUNT 函数示例

要获取products表中的产品数,可以使用COUNT函数,如下所示:

SELECT 
    COUNT(*)
FROM
    products;

AVG 函数示例

要计算产品的平均库存数量,我们可以使用AVG函数,如下所示:

SELECT 
    AVG(unitsinstock)
FROM
    products;

要按产品类别计算库存数量,可以将AVG函数与GROUP by子句一起使用,如下所示:

SELECT 
    categoryid, AVG(unitsinstock)
FROM
    products
GROUP BY categoryid;

SUM 函数示例

要按产品类别计算库存单位的总和,可以使用带有GROUP by子句的SUM函数,如下所示:

SELECT 
    categoryid, SUM(unitsinstock)
FROM
    products
GROUP BY categoryid;

MIN 函数示例

要获取products表中产品的最小库存单位,可以使用MIN函数:

SELECT 
    MIN(unitsinstock)
FROM
    products;

MAX 函数示例

同样,要在产品表products中获取产品库存的最大单位,则可以使用MAX函数:

SELECT 
    MAX(unitsinstock)
FROM
    products;