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中文网其他相关文章!