-- 示例代码: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;
COUNT(), SUM(), AVG() 等)一起使用。COUNT() 计算行数,SUM() 计算总和。WHERE 不同,HAVING 可以用于聚合函数的条件过滤。以上示例展示了如何在 MySQL 中进行分组查询,并结合聚合函数和 HAVING 子句来获取所需的统计信息。
上一篇:mysql 当前时间戳
下一篇:mysql 建表
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站