首页 >数据库 >mysql教程 >如何在 MySQL 中计算每日订单计数的运行总计?

如何在 MySQL 中计算每日订单计数的运行总计?

Patricia Arquette
Patricia Arquette原创
2025-01-22 06:41:16888浏览

How to Calculate a Running Total of Daily Order Counts in MySQL?

MySQL 运行总计计算:一个实际示例

处理表格数据通常需要计算运行总计以进行有效分析。 此示例演示如何计算 MySQL 中每日订单计数的运行总数。 我们从计算每天订单数的查询开始:

<code class="language-sql">SELECT DAYOFYEAR(`date`) AS d, COUNT(*) AS daily_count
FROM `orders`
WHERE `hasPaid` > 0
GROUP BY d
ORDER BY d</code>

这会产生类似于以下内容的结果:

d daily_count
20 5
21 7
22 12
23 4

要添加运行总计列,我们使用用户变量:

<code class="language-sql">SET @running_total:=0;
SELECT
    q1.d,
    q1.daily_count,
    (@running_total := @running_total + q1.daily_count) AS running_total
FROM
    (SELECT
        DAYOFYEAR(`date`) AS d,
        COUNT(*) AS daily_count
    FROM `orders`
    WHERE `hasPaid` > 0
    GROUP BY d
    ORDER BY d) AS q1;</code>

此代码将变量 @running_total 初始化为零。 内部查询 (q1) 选择日期和每日订单数。然后,外部查询迭代 q1,将每天的计数添加到 @running_total 并将累积总和存储在 running_total 列中。

输出现在包括运行总计:

d daily_count running_total
20 5 5
21 7 12
22 12 24
23 4 28

此增强型查询提供了运行总计,简化了数据分析和可视化。

以上是如何在 MySQL 中计算每日订单计数的运行总计?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn