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

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

相关推荐
深念Y19 小时前
DeepSeek/MiMo 推理链缓存代理:从内存到 SQLite 的两级缓存架构实战
数据库·缓存·架构·sqlite·内存·优化·分层
热爱Liunx的丘丘人19 小时前
Docker Compose 实现 Nginx 与 MySQL 多容器服务编排
mysql·nginx·docker
一点事19 小时前
oracle:手动同步数据库
数据库·oracle
努力攻坚操作系统19 小时前
ClickHouse详细教程
大数据·数据库·clickhouse
admin and root19 小时前
Blade站点的渗透测试到MySQL数据库权限接管
数据库·mysql·web安全·渗透测试·移动安全·培训·src赏金
Elastic 中国社区官方博客20 小时前
Elasticsearch:跨数据库与业务系统进行搜索
大数据·数据库·人工智能·elasticsearch·搜索引擎·全文检索
Lao A(zhou liang)的菜园20 小时前
深入理解Oracle Checkpoint
数据库·oracle
Lao A(zhou liang)的菜园20 小时前
Oracle 增量检查点(Incremental Checkpoint)I/O 优化方案
数据库·oracle
这个DBA有点耶20 小时前
SQL中的窗口函数进阶:滑动窗口与帧子句详解
数据库·sql·程序人生·mysql·oracle·学习方法·改行学it
tongyiixiaohuang20 小时前
跨平台数据库集成:SQLServer到MySQL的最佳实践
数据库·mysql·sqlserver