간만에 쿼리 작성을 하던 나는 멘붕에 빠지고 말았다.
예전에 GROUP BY ... ORDER BY ~ 를 하여 결과를 출력하면 최근 값을 가지고 올 수 있었던 것으로 기억을 하고 있기 때문이다. (오라클이었나..MSSQL이었나..)
허나 내가 작성한 쿼리는 처음 값을 가지고 오는 것이다!
검색 결과 MySQL은 처음 값을 가지고 오는 것이 맞다는 것을 알게 되었고..
대안으로는 JOIN을 해서 사용 한다는 내용들이 대부분이었다.
하지만 나는 아래와 같이 작성.. 어떤 방법이 좋을지는 EXPLAIN을 떠봐야 겠지만.. 귀찮으니까 일단 패스..
select * from t1 where timeStamp in (select max(timeStamp) timeStamp from rm_sms_result group by test_id); |
이 쿼리로 돌리면 중복된 값이 들어갈 것 같아요.
답글삭제