MySQL中,GROUP BY 分组函数

文章目录

示例查询:按性别分组统计每组信息

sql 复制代码
如果我们只想按照性别分组,并统计每个性别的人数,可以使用以下查询:

SELECT gender, COUNT(*) AS total_users
FROM user
GROUP BY gender;

示例查询:按性别分组显示详细信息

sql 复制代码
如果我们想按性别分组,并显示每组的详细信息,可以使用`GROUP_CONCAT`函数,将每组的姓名、年龄等信息聚合到一起:

SELECT 
    gender, 
    GROUP_CONCAT(name) AS names,
    GROUP_CONCAT(age) AS ages,
    GROUP_CONCAT(address) AS addresses
FROM 
    user
GROUP BY 
    gender;

示例查询:按性别分组并计算平均年龄,如果你还想统计每个性别的平均年龄,可以结合AVG()函数:

sql 复制代码
SELECT 
    gender, 
    COUNT(*) AS total_users,
    AVG(age) AS average_age
FROM 
    user
GROUP BY 
    gender;

说明

  • GROUP BY gender :将结果按性别分组。

  • COUNT(*) :统计每组的用户数量。

  • GROUP_CONCAT() :将每组的姓名、年龄、地址等字段值连接起来,以逗号分隔。

  • AVG(age) :计算每组的平均年龄。

这样可以灵活地根据需要按性别进行分组查询,展示详细信息或进行统计分析。

相关推荐
小江的记录本7 小时前
【Java基础】反射与注解:核心原理、自定义注解、注解解析方式(附《思维导图》+《面试高频考点清单》)
java·数据结构·python·mysql·spring·面试·maven
l1t7 小时前
DeepSeek总结的 DuckDB 1.5.3:并非普通的补丁版本
数据库·duckdb
Java成神之路-8 小时前
深入拆解 MySQL InnoDB 隔离级别:从 MVCC 到临键锁
mysql
云商直通车8 小时前
华为云ECS购买与配置超详细教程
服务器·数据库·华为云
hj10438 小时前
fastadmin对接人大金仓 kingbase问题记录&解决
数据库
罗超驿8 小时前
19.告别复杂SQL!用MySQL视图把逻辑拆成“变量”式操作
数据库·mysql·面试
技术钱8 小时前
向量数据库的介绍
数据库
Gauss松鼠会8 小时前
GaussDB(DWS) 日常维护命令
服务器·数据库·postgresql·性能优化·gaussdb·经验总结
Trouvaille ~8 小时前
【Redis篇】初识 Redis:特性、应用场景与版本演进
数据结构·数据库·redis·分布式·缓存·中间件·持久化
码上有光8 小时前
MySQL基本查询
数据库·mysql·oracle·期末快速复习