합계 및 평균 계산을 위한 시간 세그먼트 그룹화
MySQL 데이터베이스에서는 다양한 타임스탬프 레코드가 포함된 테이블에서 요약 데이터를 검색할 수 있습니다. 캡처 사이의 간격. 목표는 이러한 기록을 그룹화하고 10초 또는 30초와 같은 특정 시간 세그먼트에 대한 합계 및 평균 값을 계산하는 것입니다.
해결책
시간 그룹화의 핵심 세그먼트는 GROUP BY 절에 있습니다. 30초 간격을 기준으로 데이터를 그룹화하고 요약하려면 다음 명령을 사용합니다.
GROUP BY UNIX_TIMESTAMP(time_stamp) DIV 30
이 표현식은 각 레코드의 Unix 타임스탬프를 30으로 나누고 가장 가까운 30초 표시로 내림합니다. 결과적으로 동일한 30초 간격 내의 기록은 함께 그룹화됩니다.
시간 세그먼트 경계 사용자 정의
조정하여 시간 세그먼트의 경계를 수정할 수 있습니다. DIV 표현식의 분모입니다. 예를 들어 20초 간격으로 그룹화하려면:
GROUP BY UNIX_TIMESTAMP(time_stamp) DIV 20
버퍼링 시간 세그먼트
시간 세그먼트에 버퍼를 추가하려면 다음 공식을 사용할 수 있습니다. :
GROUP BY (UNIX_TIMESTAMP(time_stamp) + r) DIV 30
이 식에서 r은 30보다 작은 음이 아닌 정수를 나타냅니다. 타임스탬프에 값을 추가하면 겹치는 시간 세그먼트를 만들 수 있습니다. 예:
GROUP BY (UNIX_TIMESTAMP(time_stamp) + 5) DIV 30
이 쿼리는 레코드를 hh:mm:05에서 hh:mm:35, hh:mm:35에서 hh:mm 1:05 범위의 시간 세그먼트로 그룹화합니다.
위 내용은 합계 및 평균 계산을 위해 MySQL 타임스탬프 데이터를 사용자 정의 시간 세그먼트로 그룹화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!