Amazon Redshift
数据库开发人员指南 (API Version 2012-12-01)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

AVG 函数

AVG 函数返回输入表达式值的平均值(算术平均值)。AVG 函数使用数值并忽略 NULL 值。

语法

Copy
AVG ( [ DISTINCT | ALL ] expression )

参数

expression

对其执行函数的目标列或表达式。

DISTINCT | ALL

利用参数 DISTINCT,该函数可在计算平均值之前消除指定表达式中的所有重复值。利用参数 ALL,该函数可保留表达式中的所有重复值以计算平均值。ALL 是默认值。

数据类型

AVG 函数支持的参数类型为 SMALLINT、INTEGER、BIGINT、NUMERIC、DECIMAL、REAL 和 DOUBLE PRECISION。

AVG 函数支持的返回类型为:

  • 适用于任何整数类型参数的 NUMERIC

  • 适用于浮点型参数的 DOUBLE PRECISION

带有 64 位 NUMERIC 或 DECIMAL 参数的 AVG 函数结果的默认精度为 19。带有 128 位 NUMERIC 或 DECIMAL 参数的结果的默认精度为 38。结果的小数位数与参数的小数位数相同。例如,DEC(5,2) 列的 AVG 返回 DEC(19,2) 数据类型。

示例

从 SALES 表中查找每笔交易所售的平均产品数:

Copy
select avg(qtysold)from sales; avg ----- 2 (1 row)

查找所有列表中列出的平均总价:

Copy
select avg(numtickets*priceperticket) as avg_total_price from listing; avg_total_price ----------------- 3034.41 (1 row)

查找平均支付价格 (以降序顺序按月分组):

Copy
select avg(pricepaid) as avg_price, month from sales, date where sales.dateid = date.dateid group by month order by avg_price desc; avg_price | month -----------+------- 659.34 | MAR 655.06 | APR 645.82 | JAN 643.10 | MAY 642.72 | JUN 642.37 | SEP 640.72 | OCT 640.57 | DEC 635.34 | JUL 635.24 | FEB 634.24 | NOV 632.78 | AUG (12 rows)

本页内容: