source

날짜/시간 열에 기반한 마지막 N일 데이터 선택

goodcode 2023. 1. 9. 21:42
반응형

날짜/시간 열에 기반한 마지막 N일 데이터 선택

datetime 열이 있으며 값은 다음과 같습니다.

2021-04-13 15:31:59
2021-04-13 15:29:59
2021-04-12 15:31:59
2021-04-12 15:29:59
2021-04-10 15:31:59
2021-04-10 15:29:59
2021-04-8 15:31:59
2021-04-8 15:29:59

테이블에서 사용 가능한 최근 3일 데이터를 선택하고 싶다.

위의 예에서는 2021-04-10, 2021-04-12 및 2021-04-13 입니다.

나는 다음과 같은 것을 시도했다.

SELECT * FROM `table` WHERE DATE(`timer`) >= DATE(NOW()) - INTERVAL 3 DAY 

그러나 2021-04-11에는 이용 가능한 데이터가 없기 때문에 2021-04-12에 반환된 데이터입니다.

MariaDB 10.2.32에서는DENSE_RANK()창 기능:

SELECT *
FROM (
  SELECT *, DENSE_RANK() OVER (ORDER BY DATE(timer) DESC) rnk
  FROM tablename
) t
WHERE rnk <= 3

간단한 데모를 참조하십시오.

언급URL : https://stackoverflow.com/questions/67081288/select-last-n-days-data-based-on-datetime-column

반응형