mySql 聚合函数

聚合函数

本部分描述了对值集合进行操作的组(聚合)函数。

举个例子,对员工表中“工资”字段的最大值。员工表中工资字段的那列的所有行数据就是一组数据。

AVG 平均函数

即,在一组数据中取平均值。

语法:select AVG(列名) from 表名

SUM 求和函数 

即,在一组数据中所有值的总和

语法:select SUM(列名) from 表名

COUNT 计数函数

即,在一组数据中的n条记录。

语法:select COUNT(*) from 表名。

注意:COUNT函数的总和是非NULL值的个数。 

GROUP_CONCAT 函数

该函数返回一个字符串结果,其中包含来自组的串联的非NULL值。 如果没有非NULL值,它将返回NULL。

它的全部语法如下:

GROUP_CONCAT([DISTINCT] expr [,expr ...]
             [ORDER BY {unsigned_integer | col_name | expr}
                 [ASC | DESC] [,col_name ...]]
             [SEPARATOR str_val])
mysql> SELECT student_name,
         GROUP_CONCAT(test_score)
       FROM student
       GROUP BY student_name;

or

mysql> SELECT student_name,
         GROUP_CONCAT(DISTINCT test_score
                      ORDER BY test_score DESC SEPARATOR ' ')
       FROM student
       GROUP BY student_name;
在MySQL中,您可以获取表达式组合的连接值。 要消除重复值,请使用DISTINCT子句。 要对结果中的值进行排序,请使用ORDER BY子句。 要按相反顺序排序,请在ORDER BY子句中将DESC(降序)关键字添加到要排序的列的名称中。 默认为升序; 这可以使用ASC关键字明确指定。 组中值之间的默认分隔符是逗号(,)。 要明确指定分隔符,请使用SEPARATOR,后跟应该插入到组值之间的字符串文字值。 要完全消除分隔符,请指定SEPARATOR''。
结果被截断为由默认值为1024的group_concat_max_len系统变量给出的最大长度。虽然返回值的有效最大长度受max_allowed_packet的值限制,但该值可以设置得更高。 在运行时更改group_concat_max_len值的语法如下所示,其中val是无符号整数:
SET [GLOBAL | SESSION] group_concat_max_len = val;
返回值是非二进制或二进制字符串,具体取决于参数是非二进制还是二进制字符串。 结果类型为TEXT或BLOB,除非group_concat_max_len小于或等于512,在这种情况下,结果类型为VARCHAR或VARBINARY。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值