id를 group으로 묶어서 level이 최대인 값만 가져오려는
쿼리인데요.
select substr(id,1,29) id,
to_char(max(to_number(decode(level,'PassData','1','1R','2'))))
level
from test
group by substr(id,1,29)
order by substr(id,1,29)
위의 쿼리를 날렸을때는 총 row = 9894인데요.
select id, level,date
from test
where (id, level) in
(select substr(id,1,29) id,
to_char(max(to_number(decode(level,'PassData','1','1R','2'))))
level
from test
group by substr(id,1,29))
order by substr(id,1,29)
이렇게 쿼리를 날리면 row=0 값이 나옵니다.
어디서 문제가 생긴건지..
|