- 날짜칼럼을 기준으로 최신값만 조회 (마지막 날짜 데이터들을 가져오는 쿼리)
select
*
from(
select
*
from concent_data
where (con_id, date) in (
select con_id, max(date) as date
from concent_data group by con_id
)
order by date desc
) t
group by t.con_id
먼저 뽑아낼 테이블을 max함수를 통해 마지막 날짜 조회 후 group by를 하고 해당하는 데이터를 조건문에 처리(where 조건문 in절부분)하여 최신 데이터 순으로 order by를 통해 다시 한번 정렬을 한다.
사실 여기까지만 처리해도 정상적으로 볼 수 있지만, 중복된 시:분:초로 들어온 경우 마지막 한개의 데이터가 보장이 되질 않아 마지막에 group by를 한번 더 처리하였다.
(출처 : https://myhappyman.tistory.com/76)
'개발일지 > MySQL' 카테고리의 다른 글
[MySQL] 이전 시간 데이터 조회 (0) | 2020.03.27 |
---|