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中文網其他相關文章!