내가 온/오프 상태, 또는 상태가MySQL의 쿼리는 시간 뭔가의 집계 기간을 평가하는
00:00:00 0
04:00:00 1
08:00:00 0
09:00:00 1
15:00:00 0
20:00:00 1
23:59:59 0
을 "시작"하는 지점을에 나타내는 테이블에 온/오프 데이터에 대한 타임 스탬프의 시리즈가 "에"입니다
24 시간 동안 ON 상태의 총 지속 시간을 계산해야합니다. 이 간단한 예에서는 총 지속
= 1 (04 : 00 : 00-> 8시 0분 0초, 09 : 00 : 00-> 15시 0분 0초, 20 : 00 : 00-> 23 : 59:59 ie 13:59:59 약 14h이 작업이 SQL에서만 수행 될 수 있는지 또는 기본 프레임 워크 (django)가 반환 된 데이터를 기반으로 수행해야하는지 여부를 결정할 수 없습니다. 우리가 별도의 통계 패키지에서 SQL을 사용해야 할 수도 있기 때문에 가능하다면 데이터베이스를 무겁게하는 것이 더 바람직 할 것입니다.
작업을 수행 할 수 있는지는 분명하지 않습니다. 이전 또는 다음 선택 요소, 나는 자신감을 SQL 사용자가 있지만 이 아이디어 나 일반적인 접근 방식, 아이디어에 대한 시작점을 알 수 없습니까?
나는 이것을 하나의 쿼리 또는 이것을 계산하는 다른 영리한 방법으로 정말 좋아할 것입니다.
첫째, 나는 DESI 것 gn 테이블을 사용하여 ON 및 OFF 상태 시간이 다른 열의 같은 행에 있으면이 작업은 간단합니다. 그게 불가능하다면 해킹을 많이 당하게 될 것입니다. –