>데이터 베이스 >MySQL 튜토리얼 >MySQL에서 일일 주문 건수의 누적 합계를 계산하는 방법은 무엇입니까?

MySQL에서 일일 주문 건수의 누적 합계를 계산하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-22 06:41:16951검색

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 변수를 0으로 초기화합니다. 내부 쿼리(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으로 문의하세요.