시스템 사용 중 엑셀 출력기능을 이용하는데, 특정 데이터 순서가 틀어진것을 확인.
이게 틀어진 상태로 계속 출력되는게 아니라, 5번 중 2번이 틀어진 순서로 출력됨.
쿼리를 보다보니 의심스러운 부분 발견
보통 제일 밑에 있어야 할 ORDER BY가 중간에 있는것
즉 순서가
A 테이블 내 쿼리 실행-> B 테이블 내 쿼리 실행 -> 두개 테이블 조인 -> 조건에 부합하는 데이터 체크 -> 정렬 -> 출력
이 정상적인 순서일텐데,
A 테이블 내 쿼리 실행-> A 테이블 정렬 -> B 테이블 내 쿼리 실행 -> 두개 테이블 조인 -> 조건에 부합하는 데이터 체크 -> 출력
이렇게 돌아가고 있다.
(물론 실제 오라클 돌아가는건 좀 다르다. 나중에 봤을 때 이해를 쉽게하기 위해 위와같이 적음)
JOIN을 진행할 때 정렬 순서에 이상이 생길 가능성이 있다고 판단, ORDER BY를 가장 뒤쪽으로 빼내었음.
현재는 경과를 지켜보는중. 캐시가 남아있어서 그러는지, 진짜 잘 해결되서 문제가 없는지는 판단이 서지 않지만, 일단 엑셀 출력 시 순서는 이상없이 돌아가는듯하다.
'Oracle(오라클)' 카테고리의 다른 글
Connect by 시간별로 나타내기 (2) | 2016.05.10 |
---|---|
SQL Developer, ORA-01460: 요구된 변환은 실행될 수 없습니다 (0) | 2016.04.27 |
Too many open files 오류... 그리고 근본 원인은? (0) | 2015.07.29 |
예측 실행계획, 실제 실행계획 및 Trace 확인법 (0) | 2015.07.29 |
FK 비활성화 후 활성화 시 오류 발생 (0) | 2015.07.20 |