programing

x일 연속 값이 동일한지 확인합니다.

minecode 2022. 10. 21. 21:29
반응형

x일 연속 값이 동일한지 확인합니다.

4일 연속 0바이트 파일을 업로드한 사용자(업로더)의 리스트를 얻는 것이 목표입니다.

현재 쿼리:

SELECT * FROM file_uploads
JOIN (
    SELECT max(date_added) as latest_date
    FROM file_uploads
    WHERE size = 0
    GROUP BY uploader_id
) as list

따라서 JOIN에서 업로더별로 분류된 최신 날짜를 가져오려고 합니다.이 경우 파일 크기가 0인 파일이 업로드 됩니다.

latest_date 이후 -4일 연속 사이즈가 0인지 확인해야 하는데 그게 이해가 안 돼요.WHERE 스테이트먼트나 IF 스테이트먼트 등을 사용하여 확인할 수 있습니까?

다음은 제가 사용하고 있는 테이블의 예입니다.https://ibb.co/Sf3RFSk

날짜당 행이 1개일 경우 최대 날짜로 필터링한 후 다음 행 수를 셀 수 있습니다.0각각에 대해서uploader_id:

select uploader_id
from file_uploads fu
where fu.date_uploaded >= (select max(fu2.date_uploaded) - interval 3 day
                           from file_uploads fu2
                           where fu2.uploader_id = fu.uploader_id
                          ) and
      fu.size = 0
group by uploader_id
having count(*) = 4;

언급URL : https://stackoverflow.com/questions/66339913/check-if-the-value-has-been-the-same-for-x-consecutive-days

반응형