您的位置:首页 > 数据库 > MySQL

mysql---使用函数处理数据

2017-06-13 16:12 253 查看

1. 聚集函数

在一些应用场景下,需要得到数据的汇总信息而不用检索出来,mysql提供了5个专门的函数汇总数据。

函数说明
AVG()
返回某列的平均值
COUNT()
返回某列的行数
MAX()
返回某列的最大值
MIN()
返回某列的最小值
SUM()
返回某列之和
COUNT()函数由两种使用方式:

- 使用COUNT(*)对表中行的数目进行计数,无论表列中包含的是空值(NULL)还是非空值

- 使用COUNT(column)对特定的列中有值的行进行计数,忽略NULL值

MAX()函数忽略值为NULL的行

虽然MAX()一般用来找出最大的数值或日期,但mysql允许返回任意列中的最大值,包括返回文本列中的最大值。在用于文本数据时,如果数据按照相应的列排序,则MAX()返回最后一行。

MIN()函数与MAX()函数正好相反

SUM()函数忽略值为NULL的行

2. 聚集不同值

使用DISTINCT函数可以只计算不同的值

例如,使用AVG()函数返回本选择的供应商提供的产品的平均价格,但使用了DISTINCT参数后,平均价格只考虑各个不同的价格:

SELECT AVG(DISTINCT prod_price) AS avg_price
FROM products
WHERE vend_id = 1003;


如果指定列名,则DISTINCT只能用于COUNT().DISTINCT不能用于COUNT(*),因此不允许使用COUNT(DISTINCT),否则会产生错误。DISTINCT不能用于计算或表达式。

3. 组合聚集函数

多个聚集函数可以在同一个SELECT语句中使用:

SELECT COUNT(*) AS num_items,
MIN(prod_price) AS price_min,
MAX(prod_price) AS price_max,
AVG(prod_price) AS price_avg
FROM products;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: