>  Q&A  >  본문

MySQL 쿼리에 대한 도움말 찾기 - 그룹화된 범위 내에서 타임스탬프 수 계산

어떤 사람들은 이것이 쉽다고 생각할 수도 있지만 밤새도록 힘든 작업이 필요했습니다. 센서 경고 로그가 있고 각 센서에 대해 24시간, 168시간(1주), 336시간(2주) 동안의 간단한 이벤트 수를 포함하는 테이블을 생성하고 싶습니다. 저는 MySQL(GoDaddy에서 실행)을 처음 접했고 독학했으며 Count, Unique, Case 등의 모든 변형을 시도해 보았습니다. 웹에서 찾을 수 있습니다. 오비완 도와주세요...

샘플 데이터:

Alert_timestamp 센서 ID
2022-05-18 21:41:59 센서 1
2022-05-21 21:52:09 센서 1
2022-05-24 05:00:39 센서 2
2022-05-24 05:02:26 센서 1
2022-05-24 18:37:34 센서 4
2022-05-24 20:48:40 센서 1
2022-05-26 21:20:54 센서 2
2022-05-27 14:53:02 센서 1
2022-06-01 19:06:14 센서 4
2022-06-02 19:22:27 센서 1
... ...

원하는 출력(참고: 아래 개수는 위 표와 일치하지 않습니다). 센서에 경고가 없는 경우에도 이를 확인하고 싶습니다(예: 센서가 표에 있지만 날짜 범위에 이벤트가 없음).

으아아아
센서 <24시간 24~168시간 168~336시간
센서 1 1 1 0
센서 2 0 2 5
센서 3 0 0 0
센서 4 6 2 3

미리 감사드립니다!

P粉026665919P粉026665919258일 전610

모든 응답(1)나는 대답할 것이다

  • P粉593536104

    P粉5935361042024-02-05 09:26:27

    조건부 집계를 사용하세요.

    으아악

    테이블에 "미래"에 대한 행이 포함된 경우 첫 번째 집계 및 WHERE에 해당 조건을 추가하세요.

    (SensorID, Alert_timestamp)의 색인 생성이 개선됩니다.

    회신하다
    0
  • 취소회신하다