쿼리 튜닝을 하다보니까 궁금한것이 있어서 고수님들께 여쭤봅니다.
sybase ASE 12.5 를 사용하고 있습니다.
A 테이블 8천만건,
B 테이블 1천만건,
C 테이블 7백만건
위의 세개의 테이블을 조인하여 여러가지 형태의 통계 데이터를 뽑으려고 합니다.
통계이다 보니가 보통 1년 통계를 구하는데 기본적으로 등록일자 (20060101~20061231)(기간) 가
기본조건이고 필요에 의해서 조건을 걸어서 사용하는데
1년치 데이터가 많아서 그런건지 가장 간단한 형태의 group by 를 해도 10분 이상이 걸립니다...
select A.aa, count(A.aa)
from A, B, C
where A.aa = B.aa
and A.bb = C.bb
and A.regYmd >= '20070101'
and A.regYmd <= '20071231'
group by A.aa
sybase DB의 환경을 셋팅해주어야 하는건지, 아니면 쿼리 형태가 바뀌어야 하는건지 감을 못잡겠네요...
DB 구조나 admin 쪽은 문외한이고 쿼리 튜닝으로 해결할 수 있는 방법이 있는가 궁금합니다...
set sort_merge on
go
위 명령 사용해서 해봐도 시간상으로 변화는건 없엇습니다... 아시는분이나 이런일로 고민하셨던 분중
해결을 하신분이 계시면 잘좀 봐주세요... |