MYSQL分组查询

groub by 分组的含义:

将查询结果按照1个或多个字段进行分组,字段值相同的为一组

可用于单个字段分组,也可用于多个字段分组

group by 单独使用的意义不大

select语句的order by 子句根据寻要排序检索出的数据。

单列排序并指定方向,不指定会默认升序。

升序(ASC) 降序(DESC)

例题:select * from 表名 where 条件 order by age ASC;

中文排序转格式为gbk格式:

order by convert(name using gbk)ASC;


限制查询:指定返回的行数。

LIMIT 0,5  指定从第几行起,返回多少行,从0起但是不包括0

可以结合order by 取最大值 和最小值。

AVG()函数

VG()通过对表中行数计数并计算特定列值之和,求得该列的平均 值。 AVG()可用来返回所有列的平均值,也可以用来返回特定列或行的平均值

COUNT()函数、MAX()函数、MIN()函数、SUM()函数的用法和AVG()函数用法一样。

MYSQL分组查询:

roub by 分组的含义

group by + 集合函数:



group by + group_concat() + 集合函数:


group by + with rollup:


过滤分组用HAVING函数:

having与where很像,都是根据条件筛选结果,不过HAVING是在已有的结果上在进一步的筛选。

例题如下:


r写在规则之前如r'\d'代表的事原始字符串,\b代表的是单词的边界分割。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容