Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysql分组查询

作者:冰残°零度伤   发布日期:2026-02-16   浏览:45

-- 示例代码:MySQL 分组查询

-- 假设有一个名为 `orders` 的表,包含以下字段:
-- order_id, customer_id, order_date, amount

-- 1. 按客户分组并计算每个客户的订单总数和总金额
SELECT 
    customer_id, 
    COUNT(order_id) AS order_count, 
    SUM(amount) AS total_amount
FROM 
    orders
GROUP BY 
    customer_id;

-- 2. 按客户和订单日期分组,计算每天每个客户的订单总数和总金额
SELECT 
    customer_id, 
    order_date, 
    COUNT(order_id) AS order_count, 
    SUM(amount) AS total_amount
FROM 
    orders
GROUP BY 
    customer_id, 
    order_date;

-- 3. 使用 HAVING 子句过滤分组结果
-- 例如:只显示订单总数大于等于 5 的客户
SELECT 
    customer_id, 
    COUNT(order_id) AS order_count, 
    SUM(amount) AS total_amount
FROM 
    orders
GROUP BY 
    customer_id
HAVING 
    COUNT(order_id) >= 5;

解释说明:

  • GROUP BY:用于将查询结果按一个或多个列进行分组。通常与聚合函数(如 COUNT(), SUM(), AVG() 等)一起使用。
  • 聚合函数:用于对分组后的数据进行汇总计算。例如,COUNT() 计算行数,SUM() 计算总和。
  • HAVING:用于过滤分组后的结果。与 WHERE 不同,HAVING 可以用于聚合函数的条件过滤。

以上示例展示了如何在 MySQL 中进行分组查询,并结合聚合函数和 HAVING 子句来获取所需的统计信息。

上一篇:mysql 当前时间戳

下一篇:mysql 建表

大家都在看

mysqlavg函数保留小数

mysql显示表内容

mysql经纬度距离计算

mysql 加密

存储过程mysql

mysql 1265

mysql with语句

mysql时间加减

mysql查询表名,模糊匹配

brew 启动mysql

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站