두개 테이블을 조인해서 select 를 하는 문장이 있습니다.
ALL_EVENT 테이블은 날짜시간초 의 값이 있습니다.
두가지는 uniqueidentifer 형식의 키값을 가지고 있습니다.
여기서 ALL_EVENT 테이블은 하루에도 수만건의 데이터가 쌓이고
있습니다.
다음과 같이 날짜를 하루단위로 범위 축소를 해서 가져오려고
하는데요
아무래도 워낙 큰 테이블을 query하려고 하니 부담이 되고
있습니다.
오라클에서는 hash join 기법이라던지.. 이런 부분을
사용했었는데요.
여기서도 날짜나 pkguid 에는 index는 걸었습니다.
다른 좋은 방법이 있는지 조언 부탁드립니다.
select convert(char(8), Event.times,112) as 날짜 ,
Query.querystring as 검색어
FROM ALL_EVENT Event, ALL_EVENT_QUERY Query
WHERE Event.pkguid=Query.pkguid
AND Event.times between CONVERT(char(8),GETDATE()-1,112)
AND CONVERT(char(8),GETDATE(),112)
|