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) :计算每组的平均年龄。

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

相关推荐
_千思_1 分钟前
【小白说】数据库系统概念 6
数据库
野犬寒鸦1 小时前
深入解析HashMap核心机制(底层数据结构及扩容机制详解剖析)
java·服务器·开发语言·数据库·后端·面试
ruxshui2 小时前
元数据及元数据备份、迁移详解
数据库
禅与计算机程序设计艺术2 小时前
了解NoSQL的数据仓库和ETL
数据库·数据仓库·nosql·etl
专注前端30年3 小时前
负载均衡实战项目搭建指南:从基础到高可用全流程
运维·数据库·负载均衡
山岚的运维笔记4 小时前
SQL Server笔记 -- 第68章:内存中 OLTP(Hekaton)
数据库·笔记·sql·microsoft·sqlserver
山岚的运维笔记5 小时前
SQL Server笔记 -- 第67章:数据库邮件(DBMAIL)
数据库·笔记·sql·microsoft·sqlserver
kylezhao20195 小时前
C#异步和并发在IO密集场景的典型应用 async/await
开发语言·数据库·c#
野犬寒鸦5 小时前
ArrayList扩容机制深度解析(附时序图详细讲解)
java·服务器·数据结构·数据库·windows·后端