前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >MySQL分组查询

MySQL分组查询

原创
作者头像
是山河呀
发布2025-01-26 16:31:50
发布2025-01-26 16:31:50
8000
代码可运行
举报
运行总次数:0
代码可运行

概述

MySQL分组查询是数据库操作中的一种常用操作,用于对数据进行分组统计。在MySQL中,分组查询主要通过GROUP BY子句实现,GROUP BY子句用于对查询结果进行分组,然后通过聚合函数对每个分组进行统计。本文将介绍MySQL分组查询的基本语法和常用操作。

理解(先分组,再统计)

  • 根据一个字段进行分组: 假设现在有一个用户表,表中有10条数据,我们根据性别把所有的数据进行分组,可以分成2组,每组5条数据。这个时候就可以以每个组为单位进行统计,比如统计男性用户的平均年龄,统计女性用户的平均年龄。
  • 根据多个字段进行分组: 假如同时根据性别和学校进行分组,就可以这样分组:男生在清华大学的,男生在北大的;女生在清华大学的,女生在北大的;以此类推。

基本语法

代码语言:javascript
代码运行次数:0
复制
SELECT
    column1,
    column2,
    aggregate_function(column3)
FROM
    table_name
GROUP BY
    column1,
    column2
HAVING
    condition;
-- column1、column2为分组字段,aggregate_function为聚合函数,table_name为表名,condition为筛选条件。
-- GROUP BY子句用于对查询结果进行分组,HAVING子句用于筛选分组后的结果。

过滤分组(HAVING)

  • HAVING 用于筛选分组后的结果,只有满足条件的分组才会被返回。HAVING支持所有WHERE的操作,比如=><>=<=<>BETWEENLIKE等。
  • HAVING和WHERE的区别: WHERE过滤行,HAVING过滤分组。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概述
  • 理解(先分组,再统计)
  • 基本语法
  • 过滤分组(HAVING)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档