SAP Sybase ASE 15.5 데이터베이스.UNION 쿼리가 느리게 작동합니다.
UNION은 (10 개 개의 레코드 각 표 1과 4
select col1,col2,col3
from table1(INDEX nn MRU),table2 (INDEX hh MRU)
where key1=key2
UNION
select col1,col2,col3
from table3(INDEX pp MRU),table2 (INDEX ll MRU)
where key4=key3
표 1과 3은 작은 매우 느리게 작동합니다 -이다 매우 큰 (68 개 만명 기록을 각각) 그리고 나는 우리가이 활성 기록을 neeed
사실 나는 별도의 쿼리를 시도했습니다. 비활성 레코드를 제거하거나 다른 테이블에 활성 레코드를 선택해도 여전히 시간이 오래 걸립니다. 어제는 하나의 인덱스를 다시 작성합니다. table1,하지만 도움이되지 않습니다.
문제는 회사 규칙에 따라 비활성 레코드를 삭제할 수 없다는 것입니다.
어떤 종류의 Sybase (SAP) DB를 사용합니까? IQ, ASE, ASA? – Parado
답변을 사용하여 의견을 남기십시오. 주석 기능을 사용하거나 질문을 편집하여 추가 정보를 추가하십시오. –
옵티마이 저가 선택하는 것과 반대로 인덱스를 지정하는 이유는 무엇입니까? 테이블과 인덱스 구조에 대해 더 많이 알지 못하면 도움이 될 것입니다. 또한 쿼리 계획을 게시하여 상황이 저조한 곳을 알려줄 수도 있습니다. 어쩌면 활성 레코드 만 포함하는 대형 테이블에 대한 뷰를 작성한 다음 뷰에 대한 UNION을 작성할 수 있습니까? –